Maison > Questions et réponses > le corps du texte
问题1:
Array.keys()返回的是一个iterator对象
var arr = ['a','b','c'];
toString.call(arr.keys()); //返回的是"[object Array Iterator]" iterator对象
但为什么调用掉用arr.keys().next() 一直是返回Object {value: 0, done: false}
而如果把它赋值给变量
var iterator = arr.keys();
调用iterrator.next(),则返回正常?
问题2:
arr = [...arr.keys()]这里的'...'是什么意思
PHP中文网2017-04-11 12:56:04
每次你call arr.keys()都生成新的Array Iterator, 所以每次arr.keys().next()永远返回数组第一个index. 把iterator赋值给变量,这样你每次使用的都是同一个iterator而非建立的新iterator,这样自然结果就对了
这是展开运算符,它用来进行变量展开, 具体用法参照https://developer.mozilla.org...