Little-Gee / blog

15 stars 11 forks source link

$get #12

Open Little-Gee opened 4 years ago

Little-Gee commented 4 years ago
if (!Object.$get) {
    Object.defineProperty(Object.prototype, '$get', {
        value: function() {
            return Array.from(arguments).reduce((xs, x) => (xs && xs[x] ? xs[x] : null), this);
        },
        enumerable: false,
        writable: false,
        configurable: false
    });
}

给对象添加一个方法,用来获取属性 就是将传入的参数转为数组,有属性时就拿到属性值,没有时就返回null 例如 obj.$get('a', 'b', 'c') 这样就可以避免 obj.a && obj.a.b && obj.a.b.c这样的写法了