在sicp-in-js这本书中,给出了下面的条件判断表达式:

predicate ? consequent-expression : alternative-expression

此表达式更加有利于思考,完全撇开了if-else等语句:

> function fib2(next, current, n) { ... return n === 0 ... ? current ... : fib2(next current, next, n-1); ... } undefined > fib2(1,0, 9)

此时,用predicate取代if和else等更能有效地组织大脑的思考。

> function fib(n) { ... return n === 0 ... ? 0 ... : n === 1 ... ? 1 ... : fib(n-1) fib(n-2); ... } undefined > fib(11) 89 > fib(9) 34

javascript多层嵌套的if语句优化(帮你精通JavaScriptpredicate取代if之思)(1)

,