<script>
const moods={
name:'心情',
stus:['happy','sad','soso','creazy','down','negative'],
stusTwo:['happy','sad','soso','down','negative'],
[Symbol.iterator](){
let index = 0;
return{
next:()=>{
if(index < this.stus.length){
const result= {value: this.stus[index],done:false};
index++;
return result;
}else{
return{ value:undefined,done:true};
}
}
}
}
}
for(let item of moods.stus){
console.log(item);
}
for(let item in moods.stus){
console.log(item);
}
console.log('-----------');
for(let item of moods){
console.log(item);
}
for(let item in moods){
console.log(item);
}
</script>
const声明的moods对象,遍历其中的stus可以通过for...in moods.stus,也可以通过定义迭代器
Symbol.iterator