我在做项目的时候,不小心这样命名了一个数组“name”
var name = ["abc","abc","abc","abc"];
它在我的项目中产生了不一致,因为正如我预期的那样,name[0] 会产生第一个 abc,但是!,它给了我第一个字母 a!!!。我在 Firefox 控制台中尝试了这个数组,它总是给我数组而不是我从 Chrome 控制台中输入它得到的字符串。 所以我在 Chrome 中再次将变量重命名为类似这样的东西
var foo = ["abc","abc","abc","abc"];
foo[0] 给了我第一个“abc”。随意尝试这个,我猜命名“名称”有问题,但不知道为什么。谢谢
最佳答案
在顶层 var name
与 window.name
相同。
window.name
是保留的,所以 Chrome
将其隐式转换为字符串。
请注意,将数组转换为字符串只是用逗号分隔:
["abc","abc","abc","abc"].toString()
是:
"abc,abc,abc,abc"
关于javascript - 最奇怪的 javaScript 数组字面量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9346854/