JavaScript名称空间模式(类似于对象的属性)

JavaScript namespace pattern (similiar to properties of objects)

本文关键字:对象 属性 类似于 空间 模式 JavaScript      更新时间:2023-09-26

这种模式的目的是什么?

var ns=function(){
  //do some stuff
}
ns.test=function(){
  //do another stuff
}

我见过类似的代码,但我不明白这种模式的优点。

似乎也类似于对象的属性。

这种模式有时也与闭包一起使用,jquery似乎使用它,但不确定。

谢谢!

首先,它确保变量名和函数名不会与可能包含的其他脚本(如广告、分析、没有命名空间的库等)中的名称冲突。

出现这种模式是因为在JavaScript中,函数是具有自己的属性和方法的一等对象。这允许函数自己执行,但也可以模仿其他语言中的东西。这允许您做一些非常强大的事情,如模仿静态类,记忆,命名空间等。