小萌新小奶狗 2018-10-11 13:49 采纳率: 0%
浏览 993

javascript对象用中括号取值不加双引号为什么会去访问变量

var a = 'b';
var obj = {
a: 123
}
obj[a] == obj['b']
我向了解更深点,为什么中括号不加双引号会去访问变量去

  • 写回答

1条回答 默认 最新

  • threenewbee 2018-10-11 16:20
    关注

    几乎所有的编程语言,没有引号的合法标识符都表示一个变量。
    这个变量单独写出来代表一个最基本的表达式,表达式的值就是变量代表的值。
    因此 obj[a] 就是 obj[a的值],而a的值就是 'b',用引号包围的字符,就是字符串,它不表示变量,而是表示字面的值。
    这个别说js,任何语言都是最基本的概念。

    评论

报告相同问题?