首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

JavaScript运算符完全攻略

例如加、减、乘、除四则运算要求参与的操作数必须是数值,逻辑运算要求参与的操作数必须是布尔值。另外,每个运算符执行运算之后,都会有明确的返回类型。...具体说明如下: 赋值运算符= 附加操作的赋值运算符如+=、%=等 递增++或递减–运算符 delete运算符(功能等同于赋值 undefined) 示例1 在下面代码中,变量 a 经过赋值运算和递加运算后...a = (b++) + (++c) - (d++) - (++e); console.log(a); //返回-4 JavaScript算术运算(加减乘除+求余数+取反+自增自减) 算术运算符包括:加+...、减-、乘*、除/、求余运算符%、数值取反运算符-。...递增和递减 递增++和递减–运算就是通过不断的加 1 或减 1,然后把结果赋值给左侧操作数,以实现改变自身结果的一种简洁方法。

23240

JavaScript数字(数值)

JavaScript数字(数值) 数字(Number)也称为数值或数。 数值直接量 当数字直接出现在程序中时,被称为数值直接量。...在 JavaScript 程序中,直接输入的任何数字都被视为数值直接量。 示例1 数值直接量可以细分为整型直接量和浮点型直接量。浮点数就是带有小数点的数值,而整数是不带小数点的数值。...如当0除以0时会返回这个特殊值 Number.MAX_VALUE 表示最大数值 Number.MIN_VALUE 表示最小数值,一个接近0的值 Number.NaN 非数值,与NaN常量相同 Number.POSITIVE_INFINITY...typeof 不能分辨数字和 NaN,并且 NaN 不等同于它自己。 NaN === NaN //false NaN !== NaN //true 使用 isNaN() 全局函数可以判断 NaN。...使用算数运算符,数值可以参与各种计算,如加、减、乘、除等运算操作。

21620
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    ES6 学习笔记(四)基本类型Number

    1.2、 整数直接量 除十进制外,JavaScript能识别十六进制(以0x或0X为前缀)、二进制(以0b或0B为前缀)和八进制(以0o或0O为前缀) 如: 0xff —–> 255, 0b1001...基于±Infinity的加、减、乘、除等算术运算结果依然是±Infinity。...被零整除 简单的返回±Infinity console.log(0 / 0) // NaN 二进制浮点数与四舍五入错误 实数有无数个,但JavaScript通过浮点数的形式只能表示有限个数。...在JavaScript中,Number可以安全的表示的最小和最大整数如下: 一旦超过 53 个二进制位的数值,精度就无法保持,超过 1024 个次方的数值,数值就无法表示。...转换为布尔值) BigInt 类型的加(+),减(-),乘(*),乘方(**)与 Number 类型运算一致。

    62230

    基础 | 深入理解JavaScript中的操作符

    虽然你说的没错(其实我并不认为这些会难倒大部分人), 但是咱可不能这么随意,标识符在JavaScript中是这么定义的: 标识符:指的是变量、函数、对象属性的名字。...请看下面的定义: 只能操作一个值的操作符叫做一元操作符 如定义所说,一元操作符只能操作一个值,就如同以下实例: 这在JavaScript同时不仅仅是JavaScript中叫做自增操作符,它属于一元操作符...我们可以立即打开控制台操作一下: 不同类型的数据都进行了自加操作后表现都不同,在ECMA规范中他们的规则是这么定义的: 带有有效数字的字符串自增(减),会将字符串值转换为其数字值,然后自增(减)1。...不带数字的字符串自增(减),会直接变为NaN,一个数字类型。 布尔值自增(减)会先将其转为数值型(false为0,true为1),再进行自增(减)操作。...加性操作符 加法减法或许是我们见过的最简单的操作符了,但是在ECMA规范中,他们也会有一些特殊的行为,我们就重点看一下他有什么特殊行为 如果操作数都是数值,则: 按照常规的加法计算 操作数有一个是NaN

    45210

    JavaScript-算数运算符

    他们的规则是 所有运算子一律转为数值,再进行相应的数学运算。 ? 上面代码中,减法、除法和乘法运算符,都是将字符串自动转为数值,然后再运算。...(3)Infinity 加 -Infinity,结果为 NaN。 (4)+0 加 +0,结果为 +0。 (5)-0 加 +0,结果为 +0。 (6)-0 加 -0,结果为 -0。...6.5 特殊行为 (1)如果被除数是 Infinity,或除数是 0,结果为 NaN。 (2)Infinity 被 Infinity 除,结果为 NaN。 (3)如果除数是无穷大的数,结果为被除数。...(2)在最新的 JavaScript(ES2016) 中,禁止使用带歧义的幂运算表达式。比如,底数前不能紧跟一元运算符(+/-/~/!/delete/void/typeof) ? 7.3 示例 ?...九、自减 (--) 自减运算符将其操作数减去1,并返回一个数值。 9.1 后置和前置 (1)如果后置使用(如 x--),则在自减前返回数值。 (2)如果前置使用(如 --x),则在自减后返回数值。

    1.2K40

    《JavaScript高级程序设计(第四版)》学习笔记(三)第3章(续)

    一元加和减操作符 当加的值是非数值时,则会执行与使用 Number()转型函数一样的类型转换 一元减同理 let str = "ljc"; str = -str; //NaN 3.5.2 位操作符...逻辑或 逻辑或操作符(||),有true则true 3.5.4 乘性操作符 如果参与乘性计算的某个操作数不是数值,后台会先使用Number()转型函数将其转化为数值。...乘法(*) 乘法运算 如果Infinity与0相乘,则结果是NaN 如果Infinity与非0数值相乘,则结果是Infinity或-Infinity,取决于有符号操作数的符号 2....除法(/) 如果是零被零除,则结果是NaN 如果是Infinity被任何非零数值除,则结果是Infinity或-Infinity,取决于有符号操作数的符号 3....除后赋值(/=) 取模后赋值(%=) 加后赋值(+=) 减后赋值(-=) 左移后赋值(<<=) 右移后赋值(>>=) 无符号右移后赋值(>>>=) 3.5.11

    45220

    JavaScript(三)

    JavaScript(三) 發佈於 2018-08-04 这一篇,我们来学习一下 JavaScript 基本概念中的操作符、语句以及函数。 操作符 ECMA 描述了一组用于操作数据值的操作符。...如果商超过了 ECMAScript 数值的表示范围,则返回 Infinity 或 -Infinity 如果有一个操作数是 NaN,则结果是 NaN 如果是 Infinity 被 Infinity 除,则结果是...NaN 如果是零被零除,则结果是 NaN 如果是非零的有限数被零除,则结果是 Infinity 或 -Infinity,取决于有符号操作数的符号 如果是 Infinity 被任何非零数值除,则结果是...与另外两个乘性操作符类似,求模操作符会遵循下列特殊规则来处理特殊的值: 如果操作数都是数值,执行常规的除法计算,返回除得的余数 如果被除数是无穷大值而除数是有限大的数值,则结果是 NaN 如果被除数是有限大的数值而除数是零...重写 arguments 的值会导致语法错误(代码将不会执行)。 没有重载 ECMAScript 函数不能像传统意义上那样实现重载。

    48620

    三、基本概念

    一元加和减操作符 var num = 25; num = +num; //25 num = -num; //-25 在对非数值应用一元加操作符时,该操作符会像Number()转型函数一样对这个值执行转换...按位非(~):反码(操作数负值减1) 按位与(&) 按位或(|) 按位异或(^):只有一个1时才返回1 左移(<<):所有位向左移动指定的位数 有符号右移(>>) 无符号右移(>>>)将数值的所有32位都向右移动...var myObject = preferredObject || backupObject; (4)乘性操作符 乘法 Infinity与0相乘,结果是NaN; Infinity与非0数值相乘,结果是Infinity...除法 Infinity被Infinity除,结果是NaN; 0被0除,结果是NaN。...求模 (5)加性操作符 加法 Infinity与-Infinity相加,结果是NaN; +0与-0相加,结果是+0。

    48910

    原 三、基本概念

    一元加和减操作符 var num = 25; num = +num; //25 num = -num; //-25 在对非数值应用一元加操作符时,该操作符会像Number()转型函数一样对这个值执行转换...按位非(~):反码(操作数负值减1) 按位与(&) 按位或(|) 按位异或(^):只有一个1时才返回1 左移(<<):所有位向左移动指定的位数 有符号右移(>>) 无符号右移(>>>)将数值的所有32位都向右移动...var myObject = preferredObject || backupObject; (4)乘性操作符 乘法 Infinity与0相乘,结果是NaN; Infinity与非0数值相乘,结果是Infinity...除法 Infinity被Infinity除,结果是NaN; 0被0除,结果是NaN。...求模 (5)加性操作符 加法 Infinity与-Infinity相加,结果是NaN; +0与-0相加,结果是+0。

    93150

    【Web前端】JavaScript 数学基础:数字与运算符解析

    无论是整数还是浮点数,JavaScript 都将其视为单一的类型。这样的设计使得数字的处理变得更为简单和一致。我们先来看看如何在 JavaScript 中声明和初始化数字变量。...1.3 特殊数字值 在 JavaScript 中,还有一些特殊的数字值需要注意,例如 ​​NaN​​ 和 ​​Infinity​​。...NaN(Not a Number):当某些数学运算无法产生有效数字时,结果将返回 ​​NaN​​。例如,0 除以 0 或对负数取平方根都将返回 ​​NaN​​。...); // 输出 NaN Infinity:在 JavaScript 中,当数值超出可表示的范围时,结果将返回 ​​Infinity​​。...4.1 常见的赋值运算符 ​​=​​:赋值、​​+=​:加并赋值、​​-=​:减并赋值、​​*=​:乘并赋值、​​/=​:除并赋值、​​%=​:取余并赋值 4.2 赋值运算符示例 let num = 10

    9310

    Web - JS基础语法与表达式

    变量的合法命名,另外在附加一句,函数、类名、对象的属性等也都要遵守这个命名规则:只能由字母、数字、下划线、$组成,但不能以数字开头。不能是关键字或保留字变量名大小写敏感,a和A两个不同的变量。...NaN:NaN是英语"not a number"的意思,即不是一个数,但它是一个数字类型的值。 0除以0的结果是NaN,事实上,在数学运算中,若结果不能得到数字,其结果往往都是NaN。...复杂数据类型除基本类型外,Js的世界中还有复杂数据类型,复杂数据类型都是引用类型,引用类型的特性将在数组一课中介绍。...表达式和预算符算数运算符算数运算符一共有5种:加(+)、减(-)、乘(*)、除(/)、取余(%),默认情况,惩处法的优先级要高于加法和减法;必要时可以使用圆括号来改变运算的顺序。...let a1 = 3;a1 += 5; // 等价于 a = a + 5;自增/自减运算符:++和--是自增、自减运算符,表示在自身基础上加1或减1。

    10111

    重学js之JavaScript基本概念(下)- 运算符

    乘性操作符 ES 定义了3个乘性操作符:乘法、除法、求模。在操作符为非数值的情况下会自动执行类型转换。...一个操作数为NaN,结果为NaN 3. Infinity 与 0 相乘,结果为NaN 4. Infinity 与 非0相乘,结果为Infinity 或 - Infinity 5....如果有一个操作符不是数值,则调用Number()进行转换 7. 如果是 非0 的有限数被0除,结果是Infinity 或 - Infinity 8....操作数都是数值,执行常规的除法计算,返回除的余数 2. 被除数无穷大值,结果NaN 3. 被除数是有限大的数值而除数是0,则结果是NaN 4....(/=)除 (%=)取模 (+=)加 (-=)减 (<<=)左移赋值 (>>=)有符号右移赋值 (>>>=)无符号右移赋值 8.

    70920

    Javascript 变量 ,数据类型,运算符

    不能使用特殊字符定义变量或者以特殊字符开头,“_”除外 2. 变量名必须以字符或下划线“_”开头 3. 变量可以包含数字、从A至Z的大小字母(不能使用纯数字) 4. 不推荐使用汉字定义变量 5....保留字:ECMAScript规范中,预留的某些词汇,以便于以后某个时间会用于关键字。 ?  我们写的代码起名字的时候不能用跟关键字和保留字重名。不然会报错。...Undefined(变量未初始化) 没有给变量赋值 在EcmaScript3中,undefined是可读写的变量,可以给它负任何值。在EcmaScript5中将这个错误进行了修改。...= >= <= 结果:一种是true(正确的) 一种是false(错误的)  9、算术运算符 加  + 1、当两个Number类型的变量相加,结果为Number 2、当一个Number类型的变量和一个String...输出结果为:NaN NaN: not a number 但是它是一个Number类型 乘    * ​ 不同类型运算结果与减法的结果一致 除   / 结果同上,区别:当一个数字除以0最后的结果为 infinity

    1.4K30

    一篇文章带你了解JavaScript中的语法,数据类型,流程控制语句以及函数

    非数值,任何和NaN的操作,都返回NaN,NaN与任何值都不相等,包括自己,返回false。...按位操作符操作数字的二进制形式,但是返回值依然是标准的JavaScript数值。 与(&)、非(~)、或(|)、异或(^) ?...,结果都是NaN;如果是Infinity与0相乘,结果为NaN;如果Infinity与非0数值相乘,则结果是Infinity或-Infinity,屈居于有符号操作数的符号,Infinity与Infinity...加法,Infinity加Infinity,结果Infinity;如果-Infinity加-Infinity结果是-Infinity;Infinity加-Infinity结果是NaN;+0加+0为+0;-...减法,Infinity减Infinity结果为NaN,-Infinity减-Infinity结果为NaN,Infinity减-Infinity结果为Infinity,-Infinity减Infinity

    55110

    JavaScript(运算符)

    补充一句,JavaScript就是传统意义上的JS,意为网页脚本语言。...++(--) 在运算数前,先自增(自减),再运算。 ++(--) 在运算数后,先运算,再自增(自减)。...在我们都js中,如果运算数不是运算符所要求的类型,那么js会自动将运算数进行类型转换。 string类型转number,按照字面值转换,如果字面值不是数字,则转成NaN。...-=(减等):同上 *=(乘等):同上 /=(除等):同上 %=(取余等):同上 算数运算符 +(加) -(减) *(乘) /(除) %(取余),即取余数。...int a=8%3; //8除以3余数为2,所以变量a输出为2 比较运算符 >(大于) <(小于) >=(大于或等于) 或等于) ==(等于) !

    67710

    JavaScript基础入门

    在MDN中,对于JavaScript中的布尔值(Boolean)有上面一段描述,翻译过来的意思大致如下: 在计算机科学中,布尔值是一种逻辑数据类型,其值只能为真或假。...In JavaScript, null is one of the primitive values. 译文: 在计算机科学中,空值表示一个引用,该引用通常有意指向不存在或无效的对象或地址。...赋值 x = y 加赋值 x += y 减赋值 x -= y 乘赋值 x *= y 除赋值 x /= y 模赋值 x %= y 指数赋值 x **= y 左移赋值 x <<= y 右移赋值 x >>=...加赋值 加赋值运算符把一个右值与一个变量相加,然后把相加的结果赋给该变量。两个操作数的类型决定了加赋值运算符的行为。算术相加或字符串连接都有可能。...'4' - '3' // 1 上面代码中,虽然是两个字符串相减,但是依然会得到结果数值1,原因就在于 JavaScript 将运算子自动转为了数值。

    2.5K70
    领券