2012-05-25 43 views

回答

4

这是一样的:

if(window.localStorage){ 
    window.localStorage.clear(); 
} 

&&短路只要它看到一个false(或 “falsy”)值。

因此,如果window.localStoragefalse(或“falsy”),则停止。如果是,则继续并运行window.localStorage.clear()。返回值被忽略。

+0

Heeey!非常感谢,这是一个非常好的窍门!还有另外一个类似的技巧? –

+1

@FelipeLeñero:有'?:'。 'var c = x? a:b'与var c相同;如果(X){C = A}否则{C = B}'。还有'||'。 'var d = a || b || C'。 'd'将被设置为'a','b'和'c'的第一个非“falsy”值。 –

1
if this code evaluates to a truthy value&&run this code 
0

无论是否是控制语句的一部分,表达式都是一个表达式。在这种情况下,表达式涉及布尔操作。因此,如果第一个是true,表达式将评估第二部分。

在这种情况下,只有window.localStorage不是null,它才会执行window.localStorage上的clear()方法。

相关问题