/**
* 几乎所有语言中||和&&都遵循“短路”原理,
* 如&&中第一个表达式为假就不会去处理第二个表达式,而||正好相反。
* js也遵循上述原则。
* 当||时,找到为true的分项就停止处理,并返回该分项的值,否则执行完,并返回最后分项的值。
* 当&&时,找到为false的分项就停止处理,并返回该分项的值,否则执行完,并返回最后分项的值。。
**/
转换规则: 对象为true, 非零数字为true, 非空字符串为true, 其他为false.
function f(){ var a = ""||null||0||4||7; console.log("a = "+a); //4 var b = ""||0||null; console.log("b = "+b); //null var c = 3&&8&&false&&""; console.log("c = "+c); //false var d = 4&&6&&9; console.log("d = "+d); //9 }