В информатике, a literal - это обозначение для представления фиксированного значения в исходном коде. Почти все языки программирования имеют обозначения для атомарных значений, таких как целые числа, числа с плавающей запятой и строки, и обычно для логических и символы ; некоторые также имеют обозначения для элементов перечислимых типов и составных значений, таких как массивы, записи и объекты. анонимная функция является литералом для типа функции .
В отличие от литералов, переменные или константы являются символами, которые могут принимать одно из класс фиксированных значений, при этом константа не может изменяться. Литералы часто используются для инициализации переменных, например, ниже 1 - это целочисленный литерал, а трехбуквенная строка в «cat» - это строковый литерал:
int a = 1; строка s = "кошка";
В лексическом анализе литералы данного типа обычно являются типом лексемы с грамматическим правилом, например «строка цифр » для целочисленного литерала. Некоторые литералы являются конкретными ключевыми словами, например, true
для логического литерала «true».
В некоторых объектно-ориентированных языках (например, ECMAScript ) объекты также могут быть представлены литералами. Методы этого объекта могут быть указаны в литерале объекта с помощью функциональных литералов. Обозначение скобок ниже, которое также используется для литералов массива, типично для литералов объектов:
{"cat", "dog"} {name: "cat", length: 57}
В ECMAScript (а также в его реализациях JavaScript или ActionScript ) объект с методами может быть написан с использованием литерала объекта следующим образом:
var newobj = {var1: true, var2: "очень интересно", method1: function () {alert (this.var1)}, method2: function () {alert (this.var2)}}; newobj.method1 (); newobj.method2 ();
Эти объектные литералы аналогичны анонимным классам в других языках, например Java.
. Формат обмена данными JSON основан на подмножестве синтаксиса объектного литерала JavaScript., с некоторыми дополнительными ограничениями (среди них требование цитирования всех ключей и запрет функций и всего остального, кроме литералов данных). Из-за этого почти каждый действительный документ JSON (за исключением некоторых тонкостей с экранированием) также является допустимым кодом JavaScript, что используется в методе JSONP.