为什么在字符串上调用属性不会出错?

时间:2016-07-08 14:05:24

标签: javascript

在JavaScript中,为什么下面的第二行返回undefined而不是错误?

var apple = 'apple';
apple.colour; //undefined

1 个答案:

答案 0 :(得分:3)

计算结果显示在.[]运算符左侧的原始值的表达式将自动“包装”在相应类型的对象中(String,Number,Boolean )。

因此

"hello".length

被评估为好像是

new String("hello").length