IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> JavaScript运算符 -> 正文阅读

[JavaScript知识库]JavaScript运算符

运算符

优先级

运算符描述
()表达式分组
++ -- - ~ !一元运算符
* / %乘法、除法、取模
+ - +加法、减法、字符串连接
<< >> >>>移位
< <= > >=小于、小于等于、大于、大于等于
== != === !==等于、不等于、严格相等、非严格相等
&按位与
^按位异或
|按位或
&&逻辑与
||逻辑或
?:条件
= += -= *= /= %=赋值运算
多重求值

算数运算符

类型:加、减、乘、除、取模(取余)

  1. 加法运算的注意点

    ①任何非数值类型的数据在参与加法运算之前,都会被自动转换为是指类型之后,在参与运算

    例:let res = 1 + true; // let = 1 + 1;

    ②任何数据和NaN运算,结果都是NaN

    例:let res =1 + NaN; // res = NaN;

    ③任何数据和字符串相加,都会被先转换成字符串之后再运算

    例:let res = 1 + "123" // let = "1" + "123" = "1123";

  2. 减法运算的注意点

    ①同上

    ②同上

    ③任何数据和字符串相减,都会被先转换成数值类型之后再运算

    例:let res = 1 - "123" // let = 1 - 123 = -122;

  3. 乘法和除法运算的注意点

    同减法运算的注意点

  4. 取模(取余)运算的注意点

    例:m%n 若n = 0,结果为NaN

赋值运算符

定义:将等号右边的值存储到左边的变量中

类型: = += -= *= /= %=

注意点:①优先级低于算数运算符

??????????????②结合性是右结合(从右至左运算)

??????????????③左边只能放变量,不能放常量

自增自减运算符

自增运算符:++ 自减运算符:--

注意点:只能出现在变量的前面或后面,不能出现在常量或表达式的前面或后面

表达式:1 + 1 (1+1)++(错误写法)

关系运算符

类型:< > = >= <= == != === !==

返回值:true 或 false(关系成立返回true,关系不成立返回false)

注意点:

①对于非数值类型的数值,会先转换成数值类型,再进行判断

例:let res = 1 > false; // let res = 1 > 0;

???????let res = 1 > "10"; // let res = 1 > 10;

②任何数据和NaN进行比较,返回值都是false

例:let res = 1 > NaN; // false

???????let res = 1 > undefined; // let res = 1 > NaN;

③如果参与比较的都是字符串类型,那么不会转换为数值类型再比较,而是直接比较字符对应的Unicode编码

例:let res = "a" > "b"; // let res = 0061 > 0062;

④如果参与比较的都是字符串类型,且字符串中有多个字符,那么会从左到右依次比较,直到不满足为止

例:let res = "ab" > "ac"; // false

⑤特殊的返回值

例:let res = null == 0; // false

???????let res = undefined == 0; // false

???????let res = null == undefined; // true

???????let res = NaN == NaN; // false(企业开发中不可用 == 来判断某一个数是否等于NaN,而要用isNaN 函数来判断)

???????let num = NaN; let res = isNaN(num); // true

逻辑运算符

逻辑与 &&(一假则假)

逻辑或 || (一真则真)

逻辑非 ! (真变假,假变真)

注意点:

①在逻辑运算中如果不是布尔类型,那么会先转换为布尔类型,再参与运算

②逻辑短路现象

条件A && 条件B 由于逻辑与运算规则是一假则假,所以只要条件A是假,那么条件B就不会运算

条件A || 条件B 由于逻辑或运算规则是一真则真,所以只要条件A是真,那么条件B就不会运算

③如果参与运算的不是布尔类型,返回值有一个特点

特点:

①条件A && 条件B 如果条件A不成立,那么就返回条件A;如果条件A成立,无论条件B是否成立,都会返回条件B

②条件A || 条件B 如果条件A成立,那么就返回条件A;如果条件A不成立,无论条件B是否成立,都会返回条件B

例:let res = 0 && 123; // 0 let res = 0 || 123; // 123

? ? ? ?let res = null && 123; // null let res = null || 123; // 123

???????let res = 1 && 123; // 123 let res = 1 || 123; // 1

???????let res = 1 && null; // null let res = 1 || null; // 1

逗号运算符

作用:

①一般用于简化代码

②同时定义多个变量

例:let a, b;

③同时给多个变量赋值

例:a = 3, b = 6;

运算结果:最后一个表达式的结果(表达式1,表达式2,表达式3,……)

例:let res = ( (1+1) , (2+2) , (3+3) ); // res = 6

三目运算符(条件运算符)

格式:条件表达式?结果A :结果B

返回值:条件为真时返回结果A,条件为假时返回结果B

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-11-24 07:51:19  更:2021-11-24 07:52:30 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/21 5:43:14-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码