这是我一直认为理所当然的事情,但想知道其中的原因。
例如,为什么我可以这样做:
var a = new Number(1);
a.test = 'string';
console.log(a.test);
>>> 'string'
但是当我这样做时
var a = 1;
a.test = 'string';
console.log(a.test)
>>> undefined
为什么他们的行为如此不同?
编辑:安德里亚对这个问题的表述比我在这个线程中的表述要好得多:Javascript原始类型和相应的对象