Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.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 用于处理作用域的JS变量的唯一前置命名空间字符_Javascript - Fatal编程技术网

Javascript 用于处理作用域的JS变量的唯一前置命名空间字符

Javascript 用于处理作用域的JS变量的唯一前置命名空间字符,javascript,Javascript,在不同的语言中,变量名中可以有不同的字符,并且它们还限制了第一个字符与其他字符之间的合法性 在JS中,哪些字符没有被其他库使用?这样,您就可以安全地命名一个变量和嵌套的变量,当您进入范围的兔子洞时,这些变量链接到全局变量 我目前使用的是underline.js,因此在变量前面加上。可能会有问题。JQuery也是如此,使用$。如果我尝试使用ruby标识符,例如@或~,我会遇到错误,我不想使用或#来避免与CSS选择器混淆 您知道(或建议)在变量名之前使用什么来避免混淆和重载 我想要一个/几个独特的“

在不同的语言中,变量名中可以有不同的字符,并且它们还限制了第一个字符与其他字符之间的合法性

在JS中,哪些字符没有被其他库使用?这样,您就可以安全地命名一个变量和嵌套的变量,当您进入范围的兔子洞时,这些变量链接到全局变量

我目前使用的是underline.js,因此在变量前面加上
可能会有问题。JQuery也是如此,使用
$
。如果我尝试使用ruby标识符,例如
@
~
,我会遇到错误,我不想使用
#
来避免与CSS选择器混淆

您知道(或建议)在变量名之前使用什么来避免混淆和重载

我想要一个/几个独特的“黄金”字符,但我意识到这可能取决于项目使用的库的堆栈,所以对于当前的项目,我使用的是:require、d3、jquery、下划线、主干、文本、分派

示例代码:

// for each measure in measuresCollection
  _.each(this.measuresCollection.models, function(measure, index) {
    var `this = this;
    for (i=0; i<length; i++){
        // ... some code with new preceding variable name `this
    }
//对于MeasureCollection中的每个度量值
_.each(this.measureCollection.models,function)(度量,索引){
var`this=this;

对于(i=0;ii)如果您确实有问题,您可以对所有变量进行范围分析。var ls={};ls.myVar=“A”;ls.myVar2=2;那么您只需要选择一个不重叠的变量。这不是更像是名称空间问题而不是重载问题吗?我可能把术语弄混了,但我想最好说名称空间被重载了。您可以使用几乎任何unicode字符:varƒ=this;但是u和$是唯一允许的非wordy ascii字符。
varƒthis=this;
因为这个而微笑