使用for of遍历对象需要部署接口,代码如下:
//使用for of 遍历对象
function Person(no,name,age){
this.no = no;
this.name = name;
this.age = age;
}
//部署接口
Person.prototype[Symbol.iterator] = function(){
let keys = Object.keys(this);//所有属性的集合
let nextIndex = 0;//标记索引值
return {
next:()=>{
return nextIndex < keys.length?
{value :[keys[nextIndex],this[keys[nextIndex++]]],done:false}:
{value: undefined,done:true}
}
}
}
let p = new Person("10086","张三",18);
for(let v of p){
console.log(v);
}
文章介绍了如何在JavaScript中使用forof循环遍历对象,通过部署Symbol.iterator方法,实现了对象属性的有序访问。作者提供了一个Person类的示例,展示了如何创建并使用这个自定义迭代器。
356

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



