如何理解javascript中“字面量”这个概念

JavaScript 新增一个术语“字面量”(literal)。字符串字面量,数组字面量,对象字面量,函数字面量。

literal 的中文含义是:“按字面意思”、直译:死板的理解/翻译。

【变量】【赋值】【变量名】【值】这几个概念既简单又清晰,我感觉“字面量”这个概念的引入简直是多余的,因为“字面量”这个概念的使用场景直接用【变量】【赋值】【变量名】【值】这几个概念来描述更容易理解。大多数场景下,“字面量”可以直接理解为“值”。

字面量-->定义: 字面量是一种表示数据值的语法表示法。是直接使用代码表示数据的方式。

// 赋值
var x = 10;  // 将数字字面量 10 赋值给变量 x
var y = 'abc';  // 将字符串字面量 'abc' 赋值给变量 y

var obj = {name: '张三'}; // 将对象字面量 {name: '张三'} 赋值给obj


// 对象赋值
var person = {};
person.name = 'John';  // 将字符串字面量 'John' 赋值给对象属性 name



// 注意!!这个不是字面量了!!
var y = 10 + 20;  // 变量 y 的值是表达式计算的结果,而不是字面量。但这里的10 和 20 都是字面量

// 但这里就是字面量了,将函数字面量 赋值给 y
var y = function(){return 10 + 20;}  // 这里的 function(){return 10 + 20;} 是一个匿名函数表达式,也可以称为函数字面量。 另外, 这个匿名函数中的 10 和 20 也是字面量,是数字字面量

在赋值语句这个场景中,可以说字面量是变量(或属性)中的值的一种表示法。 

 

你可能感兴趣的:(javascript,开发语言,ecmascript)