javascript 判断属性是否存在
判断一个实例是否存在某个属性的方法使用 "in"
var Student = { name: "Robot", height: 1.2, sex: "male", run: function(){ console.log(this.name+" is running"); } }; function createStudent(name) { var s = Object.create(Student); s.name = name; return s; }
"in"判断是否存在实例属性中,无论是实例自己有的,或者继承而来的。
"name" in xiaoming; //true
"name" in Student; //true
"run" in xiaoming;//true
"run" in Student; //true
如果只是要判断是否实例自身拥有的,而不是继承而来的,要使用实例的hasOwnProperty()方法。
xiaoming.hasOwnProperty("name"); //true
xiaoming.hasOwnProperty("run"); //false
不对之处欢迎指正