javascript – 属性如何像函数一样?

如果您安装colors,您将看到可以编写如下脚本:

var colors = require('colors');

console.log('hello'.green);
console.log('i like cake and pies'.underline.red)
console.log('inverse the color'.inverse);
console.log('OMG Rainbows!'.rainbow);
console.log('Run the trap'.trap);

属性如何像函数一样(如[5,6,4] .count?).

我理解’运行陷阱’.trap()但不是’运行陷阱’.trap

解决方法:

JavaScript允许您为setter和属性定义getter(甚至在原型上):

Object.defineProperty(Array.prototype, 'count', {
    get: function () {
        return this.length;
    }
});

console.log([1, 2, 3].count);

谨慎使用.颜色,特别是uses the non-standard __defineGetter__ function instead,但效果相同.

上一篇:Vue源码循序渐进-数据响应式原理


下一篇:Android studio (AS)实现Getter和Setter的快捷键