javascript - 在 javascript 中声明命名空间时是否应该使用原型(prototype)

标签 javascript namespaces

我只是想知道在 javascript 中进行命名空间的“最佳”方法是什么。我知道这已经被问了一百万次,但我见过很多方法,包括简单地将一个对象声明为包含其相关变量和方法的命名空间。这是首选方式还是使用 protype 构造更好,如下所示:

function Namespace() {

}

Namespace.prototype.newMethod = function() {

};

//...

// now to use this:
var namespace = new Namespace();
namespace.newMethod();

我还想知道为什么一种方法比另一种方法更受欢迎。

最佳答案

您通常只在创建 Namespace 的实例时才使用原型(prototype)方法。 “类(class)”。如果这些方法是静态的(由其他 OO 语言定义),那么简单地创建一个对象并在其上粘贴函数就是要走的路。

换句话说,使用您的代码您将无法调用 Namespace.newMethod() .但你可以做 (new Namespace()).newMethod() .每种方法都是为了解决不同的问题。

关于javascript - 在 javascript 中声明命名空间时是否应该使用原型(prototype),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4138826/

相关文章:

javascript - 使用 onBlur 隐藏表单,但这与提交按钮有冲突

javascript - 我如何将服务响应数据放入 md 对话框 angularjs?

php - Symfonys Autoloader - 实现父命名空间

php - 我一定是误解了 PHP 的 "use"关键字

javascript - 如何从异步调用返回响应?

javascript - 获取元素属性

javascript - 网站上的自定义突出显示失败

php - 未找到类 'App\Http\Controllers\Model'

.net - 命名空间名称中术语的首选顺序

c# - 使用命名空间处理 C# XML 反序列化