chrome 对对象迭代器显示什么
What does chrome show for an object iterator
在 chrome 45:
{}[Symbol.iterator]
//returns [Symbol(Symbol.iterator)]
typeof ({}[Symbol.iterator])
//returns "undefined"
({}[Symbol.iterator]) || "foo"
//returns "foo"
所以对象的迭代器是某种未定义的...但是第一行到底显示的是什么?
第一行中的 {}
是一个代码块(其中没有代码),而不是一个对象。然后是一个包含 Symbol.iterator
值的数组文字,这就是控制台显示的值。
当你把 (
放在 {
之前时,它变成了一个对象,因为你不能在括号中包含代码块。
在 chrome 45:
{}[Symbol.iterator]
//returns [Symbol(Symbol.iterator)]
typeof ({}[Symbol.iterator])
//returns "undefined"
({}[Symbol.iterator]) || "foo"
//returns "foo"
所以对象的迭代器是某种未定义的...但是第一行到底显示的是什么?
{}
是一个代码块(其中没有代码),而不是一个对象。然后是一个包含 Symbol.iterator
值的数组文字,这就是控制台显示的值。
当你把 (
放在 {
之前时,它变成了一个对象,因为你不能在括号中包含代码块。