let authors = {
allAuthors:{
fiction:["周","吴","郑"],
scienceFiction:["王赵","钱孙","冯陈"],
fantasy:["蒋沈韩杨","朱秦尤许","何吕施张"]
},
addres:[]
}
authors[Symbol.iterator] = function () { // 自定义遍历器
let allAuthors = this.allAuthors // this 指向的是 authors
let keys = Reflect.ownKeys(allAuthors) // 获取key fiction fiction fantasy
let values = []
return { // 格式如此 必须要有
next(){
if(!values.length){
if(keys.length){
values = allAuthors[keys[0]]
keys.shift()
}
}
return{
done:!values.length, // 布尔值 false结束
value:values.shift() // value的值自定义
}
}
}
}
let r = []
for(let v in authors){
r.push(v)
}
console.log(r)