2011-04-01 26 views

回答

9

它设置somevarwindow.somevar如果window.somevar存在且不是布尔false,否则将其设置为空对象{}

这是用于处理可能尚未设置的变量常见的成语。

+0

类似于合并似乎 – 2011-04-01 03:54:50

+0

我是'回合去这个问题的所有ASCII艺术,但英语似乎是一个更好的解决方案。 – Blender 2011-04-01 03:55:00

+0

所以通过将它设置为一个空对象,它是否可以变成window.somevar? – VinnyD 2011-04-01 03:55:32

0

这是一个任务或任务。如果window.somevarfalseundefined,则将somevar设置为等于{}。否则,它被设置为等于window.somevar

0

这会将表达式window.somevar评估为布尔表达式。如果它评估为true那么它将返回值window.somevar。如果它的计算结果为false那么它将返回空对象{}

+0

它会返回window.somevar的值还是参考值? – Ketan 2011-04-01 04:01:19

+0

@Ketan其实我不确定。去找出... – JaredPar 2011-04-01 04:02:07

+0

@Ketan实验表明它被设置为值。虽然我不是100%肯定在这一点 – JaredPar 2011-04-01 04:03:29