使用return、break等均无法跳出循环
输出结果:0,1,2,3,4,name,sayHello,str
遍历的是索引,一般不适用于遍历数组,更适用于遍历对象,遍历对象的时候返回对象的属性名和原型上的可枚举方法和属性。
如果遍历数组,有以下不合适:
1.遍历的索引是一个字符串的数字,不可直接进行运算
2.遍历出来的顺序可能并不是实际的顺序
3.会遍历出原型上所有可枚举属性和方法
Object.prototype.sayHello = function(){
console.log(‘Hello‘);
}
Object.prototype.str = ‘World‘;
var myObject = {name:‘zhangsan‘,age:100};
for(let index in myObject){
console.log(index);
}
//输出结果 name,age,str,sayHello
只能遍历数组,无法循环遍历对象,输出的是数组的值,不会遍历自定义属性或者原型上的属性和方法
for...in...、for...of...、forEach比较
原文:https://www.cnblogs.com/xieyandabai/p/11240575.html