gpt4 book ai didi

javascript - 如何在 JavaScript 中构造对象

转载 作者:行者123 更新时间:2023-12-02 14:57:51 26 4
gpt4 key购买 nike

如何构造一个对象以允许以与 stripe API 相同的方式进行初始化:

var stripe = require("stripe")(
"sk_test_BQokikJOvBiI2HlWgH4olfQ2"
);

我已经尝试过了

var example = (function () {
function example(api_token) {
this.token = api_token;
}
example.prototype.getSelf = function (callback) {
//do stuff
};
return example;
}());
module.exports = example;

但在调用 var sdk = require('./Example')(API_KEY); 时出现 Cannot set property 'token' of undefined 错误

最佳答案

由于您的函数没有作为构造函数调用(通过 new 关键字),因此您需要确保您提供的函数不会以这种方式调用。

你可以这样做:

function Example(api_token) {
this.token = api_token;
}
// ...prototype, etc.

function example(api_token) {
return new Example(api_token);
}
module.exports = example;

或者根本不使用构造函数,而使用Object.create:

var exampleProto = {
getSelf: function() {
// ...
}
};
function example(api_token) {
var o = Object.create(exampleProto);
o.token = api_token;
return o;
}
module.exports = example;

关于javascript - 如何在 JavaScript 中构造对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35636530/

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