【发布时间】:2017-02-17 16:56:46
【问题描述】:
我认识的一个人刚刚学习编程,偶然发现了这一点,让我感到困惑:
请打开控制台 (Chrome/Firefox) 并输入:var name = ['what', 'the', '...?'];
我希望name 是一个字符串数组,但是:
-
typeof name显示string而不是Array - 列出
name变量会打印字符串而不是数组 -
name.length是13而不是3 - 写入
name = name.split(',')会按预期返回数组["what", "the", "...?"],但name仍然是string,而不是数组
name 是唯一一个似乎以这种方式运行的变量名,或者至少我找不到另一个。
这只是控制台怪癖、JavaScript 引擎错误还是什么?
注意:上述情况发生在 Chrome 和 Firefox 上。 IE Edge 出人意料地按预期工作(typeof name 是 Array 等等)。未在其他浏览器上测试。
【问题讨论】:
-
尝试使用除
name之外的变量名。 developer.mozilla.org/en-US/docs/Web/API/Window/name
标签: javascript arrays string variables