if(a)b = a的较短表达式;在javascript中

时间:2014-07-03 12:07:02

标签: javascript

我需要使用很多跟随长变量名的表达式。

if (a) b = a;

有没有Javascript更短的方法如何写这个?

1 个答案:

答案 0 :(得分:4)

它并没有比这短得多,有些人在你的问题的评论中帮助稍微提出了一些替代方案,尽管关于可维护性与可读性的关系也是一个很好的问题。

那就是说,我想如果你的变量名很长,就像你说的那样,那么通过提及每个变量名一次就可以减少它。例如你的例子在实践中可能是:

if (really_really_really_really_long_var_a) really_really_really_really_long_var_b = really_really_really_really_long_var_a;

我想我可以看到这有点令人讨厌,如果做得很多,甚至有点难以理解。

我能想到的最好是声明一个小帮手功能,或许:

var equate = function(a, b) {
    if (a) b = a;
}

然后你的长线可以缩短一点,因为你只需要提一次变量,例如。

equate(really_really_really_really_long_var_a, really_really_really_really_long_var_b);

我不完全确定我喜欢它,但是如果它缩短了代码并保持了一定程度的可读性,那么由您自行决定,那么它可能会有所帮助吗?