JS для начинающих. Урок 1.1: Литералы

Всем привет. Сегодня у нас первая лекция в рамках курса «Javascript для начинающих«, непосредственно связанная с изучением JavaScript. И начнем мы с литералов.

Понятие литерала

Литерал – это любое значение указанное явным образом в коде. В качестве литералов в js могут выступать числа, строки (текстовые значения), логические значения. Функциональные литералы, массивы и объекты мы рассмотрим позже.

Числовые литералы

В js дробные и целые числа в десятичной системе счисления записываются в виде последовательности цифр. Дробная часть десятичной дроби отделяется точкой. Если опустить целую часть десятичной дроби, то она будет считаться равной нулю. Например, литерал .8 описывает значение 0.8.

Примеры числовых литералов: 0, 2, 4, 8, 3.14, .2.

Экспоненциальная форма записи числовых литералов

Числовые литералы могут представляться в экспоненциальной форме записи. Согласно этой записи вначале (необязательно, если есть дробная часть) идут цифры, затем дробная часть (необязательно, если есть целая часть), отделённая точкой, затем (необязательно) знак «+» или минус и буква e (E).

Такая запись обозначает число, умноженное на 10 в степени, определяемой числом, которое стоит после буквы e (E). Например, 6.2e10 — это 6.2 умножить на 10 в 10-ой степени, 1.2E-2 – это 1.2 умножить на 10 в минус второй степени, .1e1 — это единица, -.2e3 – это -200 и т.д.

Шестнадцатеричные литералы

Такие литералы задают числа в шестнадцатеричной системе счисления, они начинаются с символов «0x» или «0X», а затем следует запись числа в шестнадцатеричной форме. Такая запись содержит числа от 0 до 9 и большие или маленькие буквы a, b, c, d, e, f.

Примеры шестнадцатеричных литералов: 0xFF, 0Xbb, 0x123, 0x0.

Для перевода числа из десятеричной системы счисления в шестнадцатиричную необходимо делить нацело (без остатка) на 16 пока не получится ноль, записывая остатки от деления в обратном порядке, при этом остаток 10 запишется как A, 11 как B и т.д.

Переведём число 123 из десятичной, в шестнадцатеричную систему счисления. Символ «/» будет означать деление нацело.

123 / 16 = 7, остаток 11 (запишется как B вторым символом)
7 / 16 = 0, остаток 7

В итоге шестнадцатеричное представление числа 123 – 7B, а литерал, описывающий это значение – 0X7B.

Для перевода числа из шестнадцатеричной формы представления в десятичную необходимо начиная с последних брать цифры этого числа, умножать на 16 в степени номер цифры считая с нуля и с конца числа, при этом заменяя цифры A, B, C, D, E, F на 10, 11, 12, 13, 14 и 15. Например, 7B = B * 16^0 + 7 * 16^1 = 11 * 1 + 7 * 16 = 11 + 112 = 123.

Шестнадцатеричная форма записи используется, как более краткое представление числа в текстовом виде. С помощью этой формы записи задаются, например, цвета в СSS-свойствах и кодируются кириллические символы в get-запросе.

Восьмеричные литералы

Такие литералы задают числа в восьмеричной системе счисления, они начинаются с нуля, а затем следует запись числа в восьмеричной форме. Такая запись содержит числа от 0 до 7.

Перевод числа из восьмеричной системы счисления в десятичную и назад выполняется аналогично случаю шестнадцатеричных чисел, только делить и умножать надо на 8.

Примеры восьмеричных литералов: , 012, 0123, 02.

Если после нуля стоит последовательность цифр, содержащая 8 или 9, то такой числовой литерал описывает число в десятичной системе счисления, состоящее из цифр, стоящих после нуля.

Строковые литералы

Строковый литерал (строка) представляет собой последовательность символов, заключённых в двойные («) или одинарные (‘) кавычки. Строковый литерал необходимо записывать в одну строку, в нём могут содержаться одинарные кавычки, если строка ограничена двойными кавычками и двойные кавычки, если строка ограничена одинарными кавычками.

Примеры строковых литералов: ‘Привет мир!’, «site=’true-coder.ru'», », ‘123’.
Некорректные строковые литералы: ‘mess=’hello ‘, «двойные («) кавычки».

Логические значения

Логический тип данных имеет всего два возможных значения: true, false. Логическое значение говорит об истинности чего-либо. Возможно, вам проще будет рассматривать эти значения, как «да» (true) или «нет» (false).

Перейти к содержанию курса «Javascript для начинающих»

  • Владимир

    Строковый литерал необходимо записывать в одну строку, в нём могут содержаться одинарные кавычки, если строка ограничена двойными кавычками и двойные кавычки, если строка ограничена одинарными кавычками.???
    Для меня это масло масленное.

  • Владимир, т.е. «site=’true-coder’ » и ‘site=»true-coder» ‘ — одно и тоже, можно и так и так. Поместить внутри двойных ковычек одинарные или внутри одинарных — двойные!

  • Владимир, на самом деле написано очень грамотно, если, разумеется, говорить о русском языке.

  • Latariasa

    Здравствуйте, у меня появился вопрос. В случае с числовыми литералами, а именно о переводе шестнадцатеричных данных в десятичные и тп и тд… Есть ли другой способ быстро это все сделать? Плагин? Сайт?

    • Можно использовать консоль JavaScript браузера. Если вы пользуетесь хромом или эксплорером, то её можно открыть нажав f12 и кликнув по вкладке console, ctrl+shift+i в опере, ctrl+shift+k в мозиле.
      Для перевода числа из шестнадцатиричной системы счисления в десятичную можно просто набрать соответствующий шестнадцатиричный литерал и нажать enter. Для перевода из десятичной системы счисление в шестнадцатиричную нужно нарбрать число, пробел, точку, toString(16). Например, набрав 65535 .toString(16) вы должны получить ffff.

  • Влад

    1e1 — будет 10, а не 1