1.in运算符 (属性名 in 对象)
情况1:对象自身属性
var obj={a:1};"a" in obj//true
情况2:对象继承的属性
var objA={a:1};var objB=Object.create(A)"a" in objB //true
总结:in运算符 不仅能识别对象自身的属性 也能识别继承的属性
2.hasOwnProperty 只能识别对象自身的属性
var obj={a:1};obj.hasOwnProperty("a")//trueobj.hasOwnProperty("toString")// false obj 本身没有toString属性