引言
因为最近准备面试,所以温习了很多关于JS抽象概念,发现有一些文章的术语对于“字面量”的解释多种多样,有些称其为具体的变量,有些叫标识符指向的内容,有些叫具体值。
这些说法都对,但不是很全面,写下这篇文章来解释下字面量。
在《JavaScript权威指南》这本书也对字面量有做讲解。
什么是字面量
字面量是表达一个值的统称,它可以是一串字符串,可以是某个数值,可以是一个布尔值等,引用类型和方法并不能称为字面量。
使用某个标识符所指向的内容来解释字面量并不完全,因为console.log('Hey'),其中的Hey也可称为一个字面量
例子:
let demo = 'no'
const demo2 = 123
let demo3 = false
//以上声明的变量、常量右侧的值都可称为字面量
//例如在当前执行阶段,demo3的字面量false,demo2的字面量是123
const demo4 = 2+4
//demo4比较特殊是个表达式,其中的2和4都可称为字面量,最终所计算得到的值6也可称为字面量
//表达式并不是字面量,表达式就是表达式
let obj = {
a:1,
b:2
}
//对象并不能称为字面量,但是内部属性的值可以。