遍历对象
var deng = { name: "zhang", sex: 1, weight: 180, __proto__: { lastName: "bing" } } for(var prop in deng){ console.log(prop + ":" + deng[prop]); }
循环的大小为自己属性的大小,不会计算系统隐藏属性,
判断自身属性hasOwnProperty
for (var prop in deng) { //监测是否自己的属性 if (deng.hasOwnProperty(prop)) { console.log(prop + ":" + deng[prop]); } }
in 判断可不可以访问这个属性
if ("name" in deng) { console.log("true"); } else { console.log("false"); }
instanceof A instanceof B 看A对象的原型链上有没有B的原型
//arr可能是数组可能是对象,判断是数组还是对象的三种方法
- arr.constructor 数字还是对象
- arr in Array true为数组 否则为对象
- Object.Prototype.toString.call(arr)