浅谈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中最常用的两个逻辑运算符,它们的应用场景非常多。在使用它们时,需要注意它们的优先级,以及它们的短路求值规则,否则可能会导致一些被忽略的问题。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅谈javascript中的 “ && ” 和 “ || ” - Python技术站

(0)
上一篇 2023年5月17日
下一篇 2023年5月17日

相关文章

  • 微信小程序request请求封装,验签代码实例

    以下是一份“微信小程序request请求封装,验签代码实例”的完整攻略: 简介 在微信小程序中,我们需要使用request接口向后端服务器发送请求获取数据。然而,为了确保请求的安全性以及数据的完整性,我们需要对请求进行验签,防止被恶意篡改。因此,在此,我们需要对微信小程序的request请求进行封装,同时添加验签的功能。 步骤 安装crypto-js库 我们…

    JavaScript 2023年6月11日
    00
  • javascript(js)的小数点乘法除法问题详解

    针对“javascript(js)的小数点乘法除法问题详解”的完整攻略,我来为你详细讲解。 1. 问题概述 在 JavaScript 中,小数点乘法和除法时,所得结果可能存在精度问题,也就是说,最终计算结果可能会与预期结果不同。这是因为,在 JavaScript 中,小数点数值实际上被保存在计算机以二进制表示的内存中,而二进制无法准确地表示一些十进制数,因此…

    JavaScript 2023年5月28日
    00
  • javascript中的对象创建 实例附注释

    JavaScript中的对象创建分为三种方式:字面量形式、构造函数形式和Object.create()形式,下面分别进行详细讲解。 字面量形式 字面量形式创建对象最常用的方式,它基于JavaScript中对象是一组无序的键值对的集合。下面是一个通过字面量形式创建对象的示例: // 创建一个空对象 var person = {}; // 给对象添加属性和方法 …

    JavaScript 2023年5月27日
    00
  • JavaScript面向对象核心知识与概念归纳整理

    下面我将详细讲解“JavaScript面向对象核心知识与概念归纳整理”的完整攻略。 JavaScript面向对象核心知识与概念归纳整理 什么是面向对象编程? 面向对象编程是一种编程方法,将现实世界中的实体抽象成一种对象,然后通过不同对象之间的交互实现程序功能。面向对象的编程方式比面向过程编程更加灵活、可重复使用,模块化程度也更高。 在 JavaScript …

    JavaScript 2023年5月27日
    00
  • yii form 表单提交之前JS在提交按钮的验证方法

    当我们在 Yii 的视图中使用表单时,我们可能需要对用户输入的数据进行验证,以确保它们符合我们的要求。为了达到这个目的,我们可以使用客户端 JavaScript 在提交表单之前对数据进行验证。下面是如何在 Yii 框架中使用 JavaScript 在提交按钮的验证方法之前进行表单验证的详细攻略: 步骤1:在视图中创建表单 首先,我们需要在 Yii 的视图中创…

    JavaScript 2023年6月10日
    00
  • 解决拦截器对ajax请求的拦截实例详解

    解决拦截器对ajax请求的拦截实例详解 在使用拦截器的过程中,我们可能会发现拦截器会对ajax请求进行拦截,导致请求无法正常发送。解决这个问题,我们可以在拦截器中对ajax请求进行特殊处理,使其顺利通过。 首先,我们可以在请求前判断当前请求是否是ajax请求,如果是,则向请求头中添加一个特殊参数,如下所示: import axios from ‘axios’…

    JavaScript 2023年6月11日
    00
  • js常用方法、检查是否有特殊字符串、倒序截取字符串操作完整示例

    下面我就详细讲解一下这三个操作的完整攻略。 JS常用方法 JS中有许多常用方法,以下是一些常见的方法: querySelector:用于获取文档中匹配指定选择器的第一个元素。 getElementById:根据id获取文档中的元素。 addEventListener:用于向指定元素添加事件句柄。 setTimeout:用于在指定的时间之后执行一次函数。 se…

    JavaScript 2023年5月28日
    00
  • JavaScript的漂亮的代码片段

    JavaScript的漂亮的代码片段是指在保证实现功能的前提下,代码的可读性、易扩展性等方面都表现出色的代码段。以下是编写漂亮的JavaScript代码片段的一些攻略: 细分代码段 为了提高可读性和可维护性,代码通常需要将不同的任务分成不同的部分。这些部分通常是单独的函数或方法。函数的任务应该足够小,不超过几十行,这样就可以更好地组织代码。有了这个设计,我们…

    JavaScript 2023年6月10日
    00
合作推广
合作推广
分享本页
返回顶部