可以在这个小片段中看到该行为(将其作为全局脚本执行):
var name = {};
name.FirstName = 'Tom';
alert(name.FirstName);
Run Code Online (Sandbox Code Playgroud)
undefined
Chrome中的警报产生但可以在IE和Firefox中使用.当我这样做时,我也得到一个奇怪的价值
alert(name);
Run Code Online (Sandbox Code Playgroud) 让我们说我们有这个代码段:
var name = ["Apples","Oranges","Strawberries"];
console.log(name.length);
Run Code Online (Sandbox Code Playgroud)
这段代码产生了这个奇怪的结果27 !! 问题似乎是使用变量名称作为"名称",它看起来像一个保留关键字.
但任何人都可以解释为什么这种奇怪的行为?