短路运算&&和||
ヤッハロー、Kaiqisanすうう、一つふつうの学生プログラマである,这次讲讲在代码生活中经常会碰到,但是容易记混和忘记的俩方法------短路运算。
逻辑与 && 的运算方式
var a = 5 && 6;
console.log(a); //返回的结果为 6
如果左边的值强转布尔类型之后是true 那么把右边的值赋给a,反之就是把左边的值赋给a
它等价于
var a = getContext(val1, val2)
function(val1, val2) {
if (Boolean(val1)) {
return val2
} else {
return val1
}
}
逻辑或 || 的运算方式
var a = false || 6;
console.log(a); //返回的结果为 6
如果左边的值强转布尔类型之后是true 那么把左边的值赋给a,反之就是把右边的值赋给a
它等价于
var a = getContext(val1, val2)
function(val1, val2) {
if (Boolean(val1)) {
return val1
} else {
return val2
}
}
总结
短路运算法, 有点es6中默认值的味道了,利用它的方法就是给一个默认值,再定一个参数,如果该参数没值就取默认值,有值的话就直接赋值。