&&和||操作符链接的两个值最后取哪个值的问题,有点模糊和不好理解,比如下面的表达式输出什么?如果你能答对说明你对这个问题就掌握了没什么问题。
var val1 = 123 && 234; //234
var val2 = 0 && 1; //0
var val3 = 1 && 0; //0
var val4 = 1 && ""; //""
var val5 = "" && 1; //""
var val6 = "" && 0; //""
var val7 = 0 && ""; //0
从左往右执行,若第一个值遇到false时则取第一个值,若遇到true,则继续执行第二个值,第二个之若是false,则取第二值,第二个值若是true,则取第一个。
&&操作符总结:只要一个false就取false的值,都是true取后面,都是false取前面。 助记:一F即F取F,都F取前。
var val1 = 1 || 2; //1
var val2 = 0 || 1; //1
var val3 = 1 || 0; //1
var val4 = 1 || ""; //1
var val5 = 0 || ""; //""
var val6 = "" || 0; //0
var val7 = 0 || ""; //"";
从左往右执行,若第一个值遇到false时则取第二个值,若遇到true,则取第一个。
||操作符总结:只要一个是true就取true的值,都是true取前面,都是false取后面。