javascript 判断属性是否存在

判断一个实例是否存在某个属性的方法使用 "in"this

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"判断是否存在实例属性中,不管是实例本身有的,或者继承而来的。spa

"name" in xiaoming; //truecode

"name" in Student; //trueblog

"run" in xiaoming;//true继承

"run" in Student; //trueio

若是只是要判断是否实例自身拥有的,而不是继承而来的,要使用实例的hasOwnProperty()方法。console

xiaoming.hasOwnProperty("name"); //truefunction

xiaoming.hasOwnProperty("run"); //falseclass

相关文章
相关标签/搜索