在对象上使用自定义的Symbol.iterator方法会造成死循环?
产生死循环的原因是什么?
var randoms = {
[Symbol.iterator]: function (){
return {
next: function (){
return {value: Math.random().toFixed(2)};
}
};
}
};
var randoms_pool = [];
for(var n of randoms){
randoms_pool.push(n);
if(randoms_pool.length === 10) break; // 人为中断
}
console.log(randoms_pool);
神不在的星期二
相关分类