在javascript中为变量指定第二个名称

Adi*_*oui 10 javascript jquery

我有一个包含长变量名称(postCustomThumbnailsScrollerHeight)的代码源.

我不想为整个代码源重命名这个变量,这样我就可以轻松地继续项目了,但是要简单说明它的名字.我在变量的第一个声明中尝试了以下解决方案(有效),但我不确定这是否是正确的方法.我d在IDE中有不同的颜色:

var postCustomThumbnailsScrollerHeight= d= $('.post-scroller').outerHeight();
Run Code Online (Sandbox Code Playgroud)

我正在通过这个问题寻求你常用的专家建议.

Den*_*ret 13

不,这是不是真的正确的:你不声明d变量,只分配给它,从而

  1. 使其全球化(可能或不需要)
  2. 使您的代码与严格模式不兼容

这是一个解决方案:

var d = $('.post-scroller').outerHeight(),
    postCustomThumbnailsScrollerHeight = d;
Run Code Online (Sandbox Code Playgroud)

请注意,这只应针对可读性/输入问题而不是针对下载的脚本大小进行:缩小词应该用于后一个目标.

还要小心你不是别名,而是两个变量.如果您指定为一个,则不会更改另一个.没有更多信息很难给出明确的建议,但通常的解决方案是使用命名空间对象:

假设你有一个结构

myApp.thumbnailScrollers.postCustom = {height:...
Run Code Online (Sandbox Code Playgroud)

那么你只需将后一个对象分配给模块或函数中的局部变量:

var s = myApp.thumbnailScrollers.postCustom
Run Code Online (Sandbox Code Playgroud)

这种情况下,改变s.height也会改变myApp.thumbnailScrollers.postCustom.height.