javascript - 为什么在 Chrome 中存储到变量 "name"的数组会转换为字符串?

标签 javascript arrays google-chrome

<分区>

当我在 Chrome 的控制台中运行 var name = [1,2,3] 然后访问 name 的值时,我返回 "1,2 ,3"。为什么会这样?

enter image description here

最佳答案

您看到的是一个全局变量,它是 window 对象的一部分。这实际上是浏览器使用的反射(reflect)窗口名称的值。 (参见 documentation)

因为 window.name 是一个字符串 getter/setter,你的数组被转换为一个字符串。 (并且控制台在“全局范围”中运行,因此 var namewindow.name 是相同的值。(如果您嵌套在函数中,则此行为相同将不适用,因为它不再是全局范围)

关于javascript - 为什么在 Chrome 中存储到变量 "name"的数组会转换为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31601839/

相关文章:

c++ - 将数组插入 vector 会出现错误

html - Android 浏览器中错误的边框宽度

php - Chrome 无法使用 PHP/JS 生成多个 JW 播放器

javascript - js数据: What is the difference between "none" and "inject" for DS "reapAction" configuration option?

JavaScript 使用箭头键 move 图像

javascript - 与嵌套组件共享上下文,未定义获取 UserContext

javascript - 如何设置VSCode将花括号放在新行上?

c - 数组的长度是多少?

google-chrome - Chrome : Cross-origin plugin content from must have a visible size larger than 400 x 300 pixels

c - 如何让多维数组更不容易导致精神错乱?