stringtranslate.com

Буквальный (компьютерное программирование)

В информатике литерал это текстовое представление (обозначение) значения , как оно записано в исходном коде . [1] [2] Почти все языки программирования имеют обозначения для атомарных значений, таких как целые числа , числа с плавающей точкой и строки , а также, как правило, для логических значений и символов ; некоторые также имеют обозначения для элементов перечислимых типов и составных значений, таких как массивы , записи и объекты . Анонимная функция — это литерал для типа функции .

В отличие от литералов, переменные или константы являются символами, которые могут принимать одно из класса фиксированных значений, причем константа ограничена неизменением. Литералы часто используются для инициализации переменных; например, в следующем примере 1 — это целочисленный литерал, а трехбуквенная строка в «cat» — это строковый литерал:

int a = 1 ; string s = "кот" ;      

В лексическом анализе литералы заданного типа обычно являются типом токена с правилом грамматики, например, " строка цифр " для целочисленного литерала. Некоторые литералы являются конкретными ключевыми словами , например, trueдля булевого литерала "истина".

В некоторых объектно -ориентированных языках (например, ECMAScript ) объекты также могут быть представлены литералами. Методы этого объекта могут быть указаны в литерале объекта с помощью литералов функций . Приведенная ниже запись скобок, которая также используется для литералов массивов, типична для литералов объектов:

{ "кошка" , "собака" } { имя : "кошка" , длина : 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 .

Смотрите также

Ссылки

  1. ^ Донован, Джон (1972). Системное программирование. McGraw-Hill. стр. 45. ISBN 978-0-07-017603-4. OCLC  298763.
  2. ^ "Literals". IBM Knowledge Center . 18 июня 2009 г. Получено 13 мая 2020 г.