1
考虑从node.js的REPL会话此摘录:存放在一个javascript整数额外的属性
> var a = 5;
undefined
> a.b = true;
true
> a.b;
undefined
意图是额外的属性存储在a
,而如果成功将使最后一行是true
代替undefined
。我怎样才能做到这一点?
考虑从node.js的REPL会话此摘录:存放在一个javascript整数额外的属性
> var a = 5;
undefined
> a.b = true;
true
> a.b;
undefined
意图是额外的属性存储在a
,而如果成功将使最后一行是true
代替undefined
。我怎样才能做到这一点?
你不能那样做。数字不是JavaScript中的对象。当你写:
a.b = true;
什么情况是运行时自动实例化一个数字实例。这是一个对象。您将该对象上的“b”属性设置为true
,然后将其遗忘。现在
,你可以这样做:
var a = new Number(5);
a.b = true;
alert(a.b);
,它会工作得很好。
@Bergi可以说没有:知道这两个问题是相同的需要JavaScript中的类型的知识,这个问题的提问者(如我)可能不知道。 – Trindaz
你说得对,[为什么我不能在javascript中为字符串对象添加属性?](https://stackoverflow.com/questions/5201138/why-cant-i-add-properties-to-a-string -object-in-javascript/5201148#5201148)可能是更好的副本。即使我找不到它,我相信已经存在一个很好的经典问题。 – Bergi