如何在javascript中为实用程序方法创建范围?

时间:2016-05-26 18:15:26

标签: javascript namespaces scoping

我想编写一个实用程序类,它将包含将在我的代码中使用的几个方法。

Util.sayHi("Maxim") // Hi Maxim但是我想尝试避免拉动全局范围,以及有人会覆盖我的方法的可能性。

我看到jQuery有这个问题的解决方案https://learn.jquery.com/using-jquery-core/avoid-conflicts-other-libraries/他们是如何做到的?

我正在使用React和ES6 / ES7变换器,因此可以接受新的JS功能。

1 个答案:

答案 0 :(得分:0)

好吧,既然您使用的是ES6,那么解决方案就很简单:使用模块。他们的设计就是为了做到这一点。

// util.js
export function sayHi(name) {
    console.log("Hi "+name);
}

// somewhereelse.js
import * as Util from "util.js";
Util.sayHi("Maxim");

您根本不会污染全局范围,并且您导出的变量无法从模块外部写入。