gpt4 book ai didi

javascript - 在命名空间 javascript 中创建一个新对象

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:35:40 26 4
gpt4 key购买 nike

我正在尝试在命名空间内创建一个函数,它将为我提供一个新的对象实例。

我在尝试执行以下操作时遇到语法错误:

var namespace = {
a : function(param){
this.something = param;
},
a.prototype.hi = function(){
alert('hi');
},

b : function(){
var t = new a('something');
}
};

执行此操作的正确语法是什么?在 namespace 对象中做不到吗?我不想先声明命名空间。谢谢

最佳答案

I don't want to declare the namespace first.

你可以做这样奇怪的事情:

var namespace = {
init: function() {
a.prototype.whatever = function(){};
},
a: function(x) {
this.x = x;
}
}
namespace.init();
var myA = new namespace.a("x");

但是如果你想封装一切,为什么不试试模块模式呢?它更干净:

var namespace = (function() {
function a() {};
function b(name) {
this.name = name;
};
b.prototype.hi = function() {
console.log("my name is " + this.name);
}
return {
a: a,
b: b
}
})();

关于javascript - 在命名空间 javascript 中创建一个新对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13687223/

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