Object.keys——Object.getOwnPropertyNames——对象.hasOwnProperty

1.

class Point {
    constructor(x, y) {
        this.x = x;
        this.y = y;
    }
    add(a, b) {
        return a + b
    }
    get age() {
        return this._age;
    }
    //     set age(x){
    //       this._age = x;
    //     }

}
Object.assign(Point.prototype, {
    fun1() {}
});
Point.prototype.fun2 = function() {}

var p = new Point(1,2);
console.log(Object.keys(Point.prototype))
//['fun1', 'fun2']
console.log(Object.getOwnPropertyNames(Point.prototype))
//['constructor', 'add', 'age', 'fun1', 'fun2']
console.log(Object.getOwnPropertyNames(p))
//['x', 'y']
console.log(Object.getOwnPropertyNames(new Point(3,4)))
//['x', 'y']
console.log(p.hasOwnProperty("x"))
//true
console.log(p.hasOwnProperty("y"))
//true
p.age = 100
console.log(p.age)
//使用set age(x){}才能取到值

 

上一篇:Redis / Kafka / Memcached


下一篇:在终端模拟下雪