我有以下代码:
function() {
if (foo && foo.bar !== baz) { //needed because foo can be undefined, so foo.bar always returns value
function1()
return;
}
if (foo) {
function2()
} else {
function1()
}
}
我想知道,从代码结构的角度来看,优化这些if语句的最佳方法是什么?
感谢所有的答案!
最佳答案
可以将其转换为单线:
foo && foo.baz === baz ? function2() : function1();
如果
foo
为假,则将执行function1
;如果foo
为真,但foo.baz !== baz
,则仍将执行function1
。否则,它将执行function2
。之所以起作用,是因为如果
foo
是真实的,而foo.baz !== baz
是false
,则仅当function2
是foo.baz === baz
时才执行true
。关于javascript - JavaScript if语句优化,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28612737/