JavaScript—— 运算符总结(超全)

JavaScript—— 运算符总结(超全)

1.小括号运算符

()在我们js执行代码的过程中,一行代码内,优先执行小括号里面的内容;

2. 自增和自减运算符(一元运算符)

  • ++ 自增:让当前变量+1的意思

    let num = 2
    num ++ // 3
    ++num // 2
    
  • --自减:让当前变量-1的意思

    let num = 1
    num -- // 0
    --num // -1
    

    注意:自增自减,运算符可以放前面也可以放后面,但是在不同的场景下其含义和结果会有偏差;

    不参与运算时,结果一样;

    参与运算前缀和后缀就有区别:

    • 前缀:先自增(自减)变量,再用自增(自减)后的变量参与运算
    • 后缀:先用变量原值参与运算,再自增(自减)变量

3.算术运算符

​ 跟我们数学运算规则一致,()小括号里面的先计算,然后到* % 后+ -

  • + 相加、字符串拼接

    • 如果两边都是number类型,就是进行相加

    • 如果两边有一个是字符串,那么拼接产生一个新的字符串

       1+1  // 21+ '1'  // '11'
      
  • - 相减 ,存在类型隐式转换

  • * 相乘,存在类型隐式转换

  • / 相除,存在类型隐式转换

  • % 取余数,存在类型隐式转换,正负只与左边数字有关

    1 - '1'  // 0
    1 * '2' // 2
    4 / '2'  // 2
    4 % '2' // 0
    

    以上优先级:先乘除后加减,有括号的先算括号里面的,同级就从左往右依次运算

4. 比较运算符

​ 返回的结果都是布尔值Boolean,返回true或者false

关系运算符

  • >:判断左边是否大于右边

  • <:判断左边是否小于右边

  • >=:判断左边是否大于或等于右边

  • <=:判断左边是否小于或等于右边

    相当运算符

  • ==:判断左右两边是否相等,只判断值相等,不判断类型

  • ===:判断左右两边是否全等,既要值相等,类型也要相等

  • !=:判断左右两边是否不等

注意:=====的差别,2个等不判断类型,且会产生隐式转换,3个等需要判断类型,更加严谨,建议使用3个等

5. 逻辑运算符、操作符

  • &&:逻辑与 ,两边true为true,其一false为false;
  • ||:逻辑或,两边false为false,其中一边条件满足就true;
  • !:逻辑非,true变false,false变true,存在类型转换(0、空字符串、NaN、undefined、null转成false,其他都是true);
  • ?. :可选链逻辑操作符,引用为空 (null 或者 undefined) 的情况下不会引起错误,该表达式短路返回值是 undefined,这样不会报错,也不会继续执行,A?.num与A&&A.num一样用法
  • ??:空值合并运算符,是一个逻辑操作符,当左侧的操作数为 null 或者 undefined 时,返回其右侧操作数,否则返回左侧操作数。相当于简写的3元表达式;

6. 赋值运算符

​ 给变量赋值的方式,直接赋值,简写赋值。

  • = :右边的值赋值给左边变量
  • += :在自己值的基础上再+一个值
  • -= :在自己值的基础上再-一个值
  • *= :在自己值的基础上再*一个值
  • /= :在自己值的基础上再/一个值
  • %= :在自己值的基础上再%一个值

7.逗号运算符(二元运算符)

​ 表达式1,表达式2,表达式3,…表达式n

​ 具体会与其他运算符结合使用,其实就是从左到右依次执行运算

// 例1:
var a=1 , b=2 , c=3相当于:
var a=1
var b=2
var c=3// 例2:
a = (b = 1,c = 2);  //连续执行和赋值
console.log(a);  //返回2
console.log(b);  //返回1
console.log(c);  //返回2
相当于:
a = b = 1
a = c = 2 // 覆盖了前面的赋值// 例3:
var i,j=6,k;
for(i=0; i<10; i++,j++) {k = i + j;
}// 例4:
console.log(1,2,3,4,5)

以上运算符优先级

优先级运算符顺序
1小括号()
2一元运算符++ – !
3算数运算符先* % 后+ -
4关系运算符> >= < <=
5相等运算符=== == != !==
6逻辑运算符先&& 后 ||
7赋值运算符=
8逗号运算符

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/730607.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux shell 列举当前所有网卡的IPV4地址及网卡名。

命令一&#xff1a; ip -4 addr show | grep inet | awk { printf "%s ", $2; for (i5; i<NF; i) { printf "%s ", $i }; printf "\n" } | awk {print $1, $NF} 命令二&#xff1a; 忽略 lo 环路网卡 ip -4 addr show | grep inet | awk …

标志寄存器

文章目录 标志寄存器是什么ZF标志PF标志SF标志CF标志OF标志adc指令sbb指令cmp指令有条件的转移指令DF标志和串传送指令pushf和popf 标志寄存器是什么 在8086CPU中标志寄存器是一个特殊的寄存器&#xff0c;具有以下3中功能&#xff1a; 1.用来存储相关指令的某些执行结果 2.用…

.SVN 信息泄露漏洞原理以及修复方法

漏洞名称&#xff1a;.SVN信息泄露、版本管理工具文件信息泄漏 漏洞描述&#xff1a;据介绍&#xff0c;SVN&#xff08;subversion&#xff09;是程序员常用的源代码版本管理软件。一旦网站出现SVN 漏洞&#xff0c;其危害远比SQL注入等其它常见网站漏洞更为致命&#xff0c;…

餐饮行业新风口:社区店的成功案例与经营秘诀

在竞争激烈的餐饮行业中&#xff0c;社区店正成为一个新的风口。作为一名90后的鲜奶吧创业者&#xff0c;我在社区开店已经5年时间&#xff0c;下面我将分享一些成功的社区店案例&#xff0c;并揭示其经营秘诀。 1、案例一&#xff1a;特色小吃店 这家小吃店以地方特色美食为…

MySQL安装与卸载

安装 1). 双击官方下来的安装包文件 2). 根据安装提示进行安装(全部默认就可以) 安装MySQL的相关组件&#xff0c;这个过程可能需要耗时几分钟&#xff0c;耐心等待。 输入MySQL中root用户的密码,一定记得记住该密码 配置 安装好MySQL之后&#xff0c;还需要配置环境变量&am…

平台总线--ID匹配和设备树匹配

一、ID匹配之框架代码 id匹配&#xff08;可想象成八字匹配&#xff09;&#xff1a;一个驱动可以对应多个设备 ------优先级次低 注意事项&#xff1a; device模块中&#xff0c;id的name成员必须与struct platform_device中的name成员内容一致&#xff0c;因此device模块中…

数据结构与算法-插值查找

引言 在计算机科学的广阔天地中&#xff0c;数据结构和算法扮演着至关重要的角色。它们优化了信息处理的方式&#xff0c;使得我们在面对海量数据时能够高效、准确地进行检索与分析。本文将聚焦于一种基于有序数组且利用元素分布规律的查找算法——插值查找&#xff08;Interpo…

C++面向对象程序设计-北京大学-郭炜【课程笔记(五)】

C面向对象程序设计-北京大学-郭炜【课程笔记&#xff08;五&#xff09;】 1、常量对象、常量成员函数1.1、常量对象1.2、常量成员函数1.3、常引用 2、友元&#xff08;friends&#xff09;2.1、友元函数2.2、友元类 3、运算符重载的基本概念3.1、运算符重载 4、赋值运算符的重…

二维码门楼牌管理系统应用场景:推动旅游与文化产业的智慧化升级

文章目录 前言一、二维码门楼牌管理系统在旅游领域的应用二、二维码门楼牌管理系统在文化产业的应用三、结语 前言 随着信息技术的不断发展&#xff0c;二维码门楼牌管理系统作为一种创新的信息化手段&#xff0c;正在逐渐渗透到旅游和文化领域。它通过为文化景点、旅游景点和…

ARM系统控制和管理接口System Control and Management Interface

本文档描述了一个可扩展的独立于操作系统的软件接口,用于执行各种系统控制和管理任务,包括电源和性能管理。 本文档描述了系统控制和管理接口(SCMI),它是一组操作系统无关的软件接口,用于系统管理。SCMI 是可扩展的,目前提供了以下接口: • 支持的接口的发现和自描述…

Java Map接口实现类之 HashMap

定义 public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V>, Cloneable, Serializable{static final int DEFAULT_INITIAL_CAPACITY 1 << 4; //默认初始化容积&#xff0c;就是默认数组的长度为 16static final int MAXIMUM_CAP…

keep-alive 页面切换不触发onActivated和onDeactivated方法周期

<keep-alive :include"tagList"><component :is"Component" /></keep-alive>const tagList computed(() > {return $store.state.tagList })原因&#xff1a; store.state.app.tagList返回的是一个 Proxy&#xff0c; 代理了数组&am…

openxml获取xlsx的Excel.Validation

在 Open XML SDK 中&#xff0c;无法直接使用 Excel.Range 和 Excel.Validation&#xff0c;因为这是 VSTO (Visual Studio Tools for Office) 的概念&#xff0c;而不是 Open XML SDK 的概念。Open XML SDK 提供了对 Office Open XML (OOXML) 文件格式的低级访问&#xff0c;而…

Docker上部署LPG(loki+promtail+grafana)踩坑复盘

Docker上部署LPG&#xff08;lokipromtailgrafana&#xff09;踩坑复盘 声明网上配置部署踩坑 声明 参考掘金文章&#xff1a;https://juejin.cn/post/7008424451704356872 版本高的用docker compose命令&#xff0c;版本低的用docker-compose 按照文章描述&#xff0c;主要准备…

Windows下PostgreSQL安装教程

一、下载 https://www.enterprisedb.com/downloads/postgres-postgresql-downloads

自动化测试框架有哪些?

前言 自动化测试常用的Python框架有哪些&#xff1f;常用的框架有Robot Framework、Pytest、UnitTest/PyUnit、Behave、Lettuce。Pytest、Robot Framework和UnitTest主要用于功能与单元测试&#xff0c;Lettuce和Behave仅适用于行为驱动测试。 一、Robot Framework Python测…

ASE 2023 Paper

1 CertPri: Certifiable Prioritization for Deep Neural Networks via Movement Cost in Feature Space. &#xff08;CertPri&#xff1a;通过特征空间中的移动成本对深度神经网络进行可认证的优先级排序。&#xff09; 2 Nuances are the Key: Unlocking ChatGPT to Find F…

3.8Code

基于顺序存储结构的图书信息表的新图书的入库 #include<iostream> #include<stdlib.h> #include<string.h>typedef int status;#define OK 1using namespace std;typedef struct{char no[50];char name[50];float price; }Book;typedef struct{Book* elem;i…

21世纪信息产业发展趋势与挑战

本报告旨在深入探讨21世纪信息产业的发展趋势与挑战。首先&#xff0c;通过分析信息技术的进步、互联网的普及和数字化的趋势&#xff0c;阐述了信息产业在各个领域的快速发展和深刻变革。其次&#xff0c;报告指出了信息产业面临的挑战&#xff0c;如信息安全、隐私保护和网络…

CTP-API开发系列之七:下报撤单及回报顺序

CTP-API开发系列之七&#xff1a;报撤单及回报顺序 前情回顾相关函数相关术语报单回报成交回报错单响应错单回报 重要序号RequestIDFrontIDSessionIDOrderRefExchangeID TraderID OrderLocalIDExchangeID OrderSysID 报单场景 前情回顾 CTP-API开发系列之一&#xff1a;各版…