关键词

浅谈javascript中的 “ && ” 和 “ || ”

浅谈JavaScript中的 “&&” 和 “||”

在JavaScript中,逻辑运算符包括“与”(&&)、“或”(||)及“非”(!)三种,其中“与”和“或”经常被用来作为条件判断语句中的关键字。本篇文章将会详细讲解“与”(&&)和“或”(||)这两个运算符的用法以及其常见应用场景。

“与”(&&)

在JavaScript中,“与”(&&)运算符表示假如其左侧的表达式为真,那么就执行右侧的表达式;反之,如果左侧表达式为假,则直接返回左侧表达式的值,而不再对右侧表达式进行求值。示例如下:

let num1 = 3;
let num2 = 4;

if (num1 < 5 && num2 > 3) {
   console.log("num1小于5且num2大于3");
}

在以上代码中,首先判断num1是否小于5,如果是,就继续判断num2是否大于3。由于num1小于5且num2大于3,所以会输出“num1小于5且num2大于3”。

另外一个经常用到“与”(&&)运算符的场景是进行函数的参数默认值设置,如下所示:

function doSomething(arg1, arg2) {
    arg1 = arg1 || "默认值1";
    arg2 = arg2 || "默认值2";
    console.log(arg1 + ", " + arg2);
}

doSomething();
// 输出: "默认值1, 默认值2"

doSomething("自定义值1", "自定义值2");
// 输出: "自定义值1, 自定义值2"

doSomething("自定义值1");
// 输出: "自定义值1, 默认值2"

在上面的示例代码中,当函数缺少某个参数时,通过使用“arg1 = arg1 || '默认值1'”来为其设置默认值,如果arg1已经存在,那么它将保留其原来的值,否则就会使用默认值“默认值1”。

“或”(||)

在JavaScript中,“或”(||)运算符表示假如其左侧的表达式为假,那么就执行右侧的表达式;反之,如果左侧表达式为真,则直接返回左侧表达式的值,而不再进行右侧表达式的求值。示例如下:

let num1 = 3;
let num2 = 4;

if (num1 > 5 || num2 > 3) {
   console.log("num1大于5或num2大于3");
}

在以上代码中,首先判断num1是否大于5,如果是,就不会再对num2进行求值,直接输出“num1大于5或num2大于3”。如果num1不大于5,则继续判断num2是否大于3,由于num2大于3,所以也会输出“num1大于5或num2大于3”。

另外一个常见的应用场景是使用“或”(||)运算符进行默认值的判断,例如:

let num1 = null;
let num2 = num1 || 0;

console.log(num2);
// 输出: 0

在以上代码中,由于num1为null,所以num2的值被设置为0。而如果num1不为null,则num2会被设置为num1的值。

总结

“与”(&&)和“或”(||)是JavaScript中最常用的两个逻辑运算符,它们的应用场景非常多。在使用它们时,需要注意它们的优先级,以及它们的短路求值规则,否则可能会导致一些被忽略的问题。

本文链接:http://task.lmcjl.com/news/9062.html

展开阅读全文