Symbol.iterator
自定义可迭代对象
let obj = {
name: 'yang',
age: 23,
hometown: 'guangyuan',
sex: 'male',
[Symbol.iterator]: function () {
let keys = Object.keys(this);
let length = keys.length;
let cur = 0;
return {
next: () => {
return {
value: this[keys[cur]],
done: cur++ === length
}
}
}
}
}
for(let i of obj) {
console.log(i); //yang 23 guangyuan male
}
本文介绍如何使用Symbol.iterator自定义JavaScript对象的迭代行为。通过一个示例展示了如何创建一个可迭代对象并遍历其属性。这有助于理解迭代器的工作原理及其在实际应用中的灵活性。
99

被折叠的 条评论
为什么被折叠?



