javascript - chrome 为对象迭代器显示了什么

标签 javascript object iterator generator

在 chrome 45 中:

{}[Symbol.iterator]
//returns [Symbol(Symbol.iterator)]
typeof ({}[Symbol.iterator])
//returns "undefined"
({}[Symbol.iterator]) || "foo"
//returns "foo"

所以对象的迭代器是某种未定义的...但是第一行到底显示的是什么?

最佳答案

第一行中的

{} 是代码块(其中没有代码),而不是对象。然后是一个包含 Symbol.iterator 值的数组文字,这是控制台显示的值。

当你把 ( 放在 { 之前,它就变成了一个对象,因为你不能在括号中包含代码块。

关于javascript - chrome 为对象迭代器显示了什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32661525/

相关文章:

Javascript - 数组如何在内部存储?

java - 倒带迭代器

javascript - 如何使用两个不同的 ui 路由器在 angularjs 中的状态之间共享范围数据?

python - 无法摆脱 TypeError : 'str' object is not callable

PHP ↔ JavaScript 通信 : constants VS strings

java - 在构造函数中传递对象

java - 列表迭代器方法的正确实现

javascript - 如何在 Jquery 中单击每个按钮时获取新的时间或日期?

javascript - jQuery 多面板切换