1
我要记忆一个函数,但我不确定是否应该小心一些可以传递给该函数的特定参数。对象中的键无效
对象永远不能拥有哪些键(无效键),但函数可以接收为参数?
我想不出任何。即使是null
和undefined
也是有效的对象键。
我要记忆一个函数,但我不确定是否应该小心一些可以传递给该函数的特定参数。对象中的键无效
对象永远不能拥有哪些键(无效键),但函数可以接收为参数?
我想不出任何。即使是null
和undefined
也是有效的对象键。
没有无效的键,因为Javascript中的对象键存储为字符串。
即使您使用非字符串值作为键,该值也会转换为字符串。
你可以用一个简单的对象看到像{a:2}
,如果你把它定义为另一个对象的关键,例如:
var b = {};
b[{a:2}] = 2;
你可以看到,{a:2}
将被抛入串"[object Object]"
。
类似地,使用null
或undefined
作为密钥实际上会导致密钥"null"
和"undefined"
。
对象键也可以是数字,'null','undefined'等... – alexandernst
@alexandernst:是的,但它们仍然存储为字符串 – sfletche
不,它们不是。做你的测试,你会看到这些实际存储为键的类型。 – alexandernst