Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.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_Coffeescript_Constants_Formbuilder - Fatal编程技术网

什么';将JavaScript字符串映射到;常数;?

什么';将JavaScript字符串映射到;常数;?,javascript,coffeescript,constants,formbuilder,Javascript,Coffeescript,Constants,Formbuilder,在Better Technology部门的库中,我看到了几个字符串映射到大写字母对象属性的例子,好像在模仿JavaScript中的常量。以下是: 然后,这些“常量”主要插入组成视图的字符串中。发件人: 视图:“” """ 除了不必使用文字外,这样做是否还有性能或体系结构优势?似乎只要使用这根绳子就不那么费力,甚至更快。可怜人的安全宣言 rf.get('field_optons.size') // => undefined (I assume, depends on rf.get) rf.

在Better Technology部门的库中,我看到了几个字符串映射到大写字母对象属性的例子,好像在模仿JavaScript中的常量。以下是:

然后,这些“常量”主要插入组成视图的字符串中。发件人:

视图:“”
"""

除了不必使用文字外,这样做是否还有性能或体系结构优势?似乎只要使用这根绳子就不那么费力,甚至更快。

可怜人的安全宣言

rf.get('field_optons.size')
// => undefined (I assume, depends on rf.get)
rf.get(Formbuilder.optons.mappings.SIZE)
// => TypeError: Cannot read property 'mappings' of undefined
第一种情况下的输入错误会让代码继续使用错误的值(
未定义


第二种情况下的输入错误,除非是在最后一个组件中,否则将中止您的程序。

Javascript没有常量,因此当您看到这一点时,它实际上更像是用于传达常量意图的代码约定。主要的优点是,您可以在代码中引用该常量十次,当您需要更改该值时,只需在一个位置更改它

编辑:ES6中出现了常量,现在在不同的浏览器中部分支持


只是一种引用常量的语义,类似于用下划线命名私有方法。
view: """
    <textarea class='rf-size-<%= rf.get(Formbuilder.options.mappings.SIZE) %>'></textarea>
  """
rf.get('field_optons.size')
// => undefined (I assume, depends on rf.get)
rf.get(Formbuilder.optons.mappings.SIZE)
// => TypeError: Cannot read property 'mappings' of undefined