在对于流程控制语句当中,我们最熟悉不过的就是
if( 条件 ){ //代码块 }else { //代码块 }
对于一个执行不同的代码来说,如果执行的代码很多,可能就有必要使用上面这种方式
但往往我们开发当中,也会碰到一些赋值操作,如果使用上面方式,未免显得太过冗余。
举个例子:
num1 = 10 num2 = 20
可以看见以上方式,只是输出一个结果,却用了五行代码来去实现。
接下来,我们见证下怎么使用一行代码去替代上面五行代码实现的结果
var num1 = 10; var num2 = 20; // 第一种方式 也可以使用 三目运算符 alert( num2 > mum1 ? num2 : num1 ); //第二种方式 就是使用 && ,|| alert( num2 > num1 && num2 || num1 );
使用 &&,|| 比三目运算的优势在于,它可以判断多个条件,也可以单独使用
举个 && 例子:
var num1 = 10;var num2 = 5;// 假如 num1,num2 都大于10 则输出 num1+num2; var result = num1>10 && num2 >10 && num1+ num2 || 0; alert(result);
我们开发知道,在开发当中,读取后端返回的数据可能因某种原因而未读取到,那么接收的数据如果是对象,都会在接收该字段的时候额外加上没有获取到时的字段
举个 || 例子:
var reuslt = res && res.data || []; if ( result.length ) return;
使用这种方式,可以通过条件判断是否使用该变量,假如是对象,如果没有获取到,而使用该对象属性,则会报错。
而避免这种模式,就是在使用的时候,一定要判断,判断,判断
Atas ialah kandungan terperinci JS中&& 与 ||用法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!