var b = true;
b.foo = 'whatever'; // Auto-boxing occurs?
b.foo; // undefined - why?
我现在可以检索属性foo
的值吗?
答案 0 :(得分:0)
var b
最初设置为布尔值。要将点符号分配给变量,它必须是javascript Object
。
如果b
设置为var b = {}
,则b.foo = 'whatever';
应该有效。
为了更好的实践,请在切换其数据类型之前检查变量类型:
var b = true;
if(typeof b === 'object'){
b.foo = 'whatever';
}