gpt4 book ai didi

javascript - Node 模块提供 getters 和 setters

转载 作者:搜寻专家 更新时间:2023-11-01 00:30:48 26 4
gpt4 key购买 nike

我有以下代码可以正常工作。现在我需要添加额外的属性和函数并将它们导出,建议怎么做?假设我有两个函数和两个附加属性需要导出。

属性如已验证prop1

var internal = require("../plu/internal");
module.exports = {isAvailable: false};

internal.eventEmitter.on('AppA', function () {
module.exports.isAvailable = true;
});

最佳答案

在对象上定义 setter 和 getter 方法的标准方法是在 internal 模块中使用 Object.defineProperty 方法。通过导出 internal 模块,您还将导出 settergetter 方法。

Object.defineProperty(Internal.prototype, "isAvailable", {
get : function(){
return this.available;
},
set : function(value){
this.available = value;
}
});

或者在 ES6 中你可以写同样的东西:

get isAvailable() {
return this.available;
}

set isAvailable(value) {
this.available = value;
}

使用 Internal.prototype,您可以使用 setter 和 getter 方法扩展基本对象原型(prototype)。

关于javascript - Node 模块提供 getters 和 setters,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34877561/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com