2

我正在查看我下载的 JavaScript 小部件的一些代码,并且有一个类似于以下内容的变量分配:

var a = a.something || a.somethingElse, c, d, e, f, g;

我想知道的是这是否等同于:

var a = a.something || a.somethingElse;
var c, d, e, f, g;

或这个:

var a = a.something || a.somethingElse || c || d || e || f || g;

我一直在阅读短路评估和作业,我知道第一部分是说:

if ( a.something != (null or 0 or false)) {
    a = a.something;
} else {
    a = a.somethingElse;
}

但我似乎找不到任何使用此类示例的资源。


谢谢你的帮助!

4

1 回答 1

4

你的理解是正确的。var 语句中的逗号分隔列表被视为单个 Ines。

至于布尔 OR 语句:如果第一个表达式是假的,则使用第二个。您可以添加更多,如第三个示例中所示。

于 2012-07-26T16:36:49.170 回答