我要记住一个函数,但我不确定我是否应该注意一些可以传递给该函数的特定参数。
对象永远不会有什么键(无效键),但函数可以作为参数接收?
我想不到任何。即使null
和undefined
也是有效的对象密钥。
答案 0 :(得分:2)
没有无效的密钥,因为Javascript中的对象密钥存储为字符串。
即使您使用非字符串值作为键,该值也会转换为String。
如果您将其定义为另一个对象中的键,则可以使用{a:2}
之类的简单对象来查看此内容,例如:
var b = {};
b[{a:2}] = 2;
您可以看到{a:2}
将被投射到字符串"[object Object]"
中。
同样,使用null
或undefined
作为键实际上会产生键"null"
和"undefined"
。