Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 名称空间常量_Javascript - Fatal编程技术网

Javascript 名称空间常量

Javascript 名称空间常量,javascript,Javascript,我正在寻找一种理想的方法来命名一些常量的名称空间,以便稍后在代码中访问。理想情况下,常量将有两层,第一层是整个项目的名称空间。让我们称之为Foo。第二层是常量所表示的类,我们称之为Bar。使用以下命令实现类似的内容的最佳方法是什么 var Foo = Foo || {}; Foo.Bar = {   CONST_A: 1,   CONST_B: 220130324,   ... } 以下是检索常量A值的最佳方法: Foo.Bar.CONST_A?有没有办法编写一个helper方法,这样我就不必

我正在寻找一种理想的方法来命名一些常量的名称空间,以便稍后在代码中访问。理想情况下,常量将有两层,第一层是整个项目的名称空间。让我们称之为Foo。第二层是常量所表示的类,我们称之为
Bar
。使用以下命令实现类似的内容的最佳方法是什么

var Foo = Foo || {};
Foo.Bar = {
  CONST_A: 1,
  CONST_B: 220130324,
  ...
}
以下是检索常量A值的最佳方法:


Foo.Bar.CONST_A
?有没有办法编写一个helper方法,这样我就不必使用完全限定的名称空间来访问常量?在JavaScript中实现这一点的最佳方法是什么?

这是一种非常常见的处理方法。拥有一个速记助手并没有那么有用,因为它破坏了拥有一个名称空间常量的目的。

Yes and Yes and Yes.“var Foo=Foo | |{};”是毫无意义的,“var Foo={};”更好(不隐藏潜在的ref错误而不修复它),但为什么要使用Foo而不是在使用“常量”的函数中跳转到Bar呢,您可以将路径缩短为单个点:var C=Foo.Bar。。。警报(C.CONST_A);您还可以(读取不应该)与(Foo.Bar){alert(CONST_A);}一起使用