var obj={

  webName:"蚂蚁部落",

  age:2,

  target:"分享互助"

}

for(prop in obj){

  console.log(prop);

}


上面的代码可以遍历obj对象中的每一个属性,再来看一段代码:

Object.prototype.address="青岛市南区";

var obj={

  webName:"蚂蚁部落",

  age:2,

  target:"分享互助"

}

for(prop in obj){

  console.log(prop);

}

由上面的代码可以看出,for in语句也可以遍历原型链上的继承的属性,不过只能够是自定义属性,比如toString()这样的javascript自带的不能够被遍历。也就是说for in语句可以遍历对象上所具有的一切非javascript自带的属性或者方法,无论是不是原型链上的。


如果是数组,for in 是数组索引。

var obj=[{

 webName:"蚂蚁部落",

 age:2,

 target:"分享互助"

},{

 webName:"蚂蚁部落2",

 age:22,

 target:"分享互助2"

}]

for(prop in obj){

console.log(prop);

for(pro in obj[prop]){

console.log(pro);

}

 

}