【发布时间】:2013-10-01 06:21:37
【问题描述】:
在 Chrome 开发者工具窗口中,我输入:
> name = ["a", "b", "c"]
["a", "b", "c"]
但是,name 变成了字符串:
> typeof name
"string"
> name
"a,b,c"
> name[1]
","
这显然不适用于其他变量名!
> foo = ["a", "b", "c"]
["a", "b", "c"]
> typeof foo
"object"
> foo[1]
"b"
并且name 被定义为页面加载时的空字符串(据我所知,除了字符串之外,它不能变成任何东西)。
那么,name 怎么了?
【问题讨论】:
-
看起来 name 在分配给数组之前已经存在。默认值为
""。我怀疑它是语言本身的一部分的内置/原型。尽管有细节。 -
我注意到的另一件事是,即使您重新加载页面,该变量也会保持设置,这不是正常行为。
-
好吧,你可以有一个名为“name”的函数或一个对象,它会从调用
typeof name返回function或object