JavaScript之null的加(+)减(-)乘(*)除(/)和取模(%)运算
Posted web半晨
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript之null的加(+)减(-)乘(*)除(/)和取模(%)运算相关的知识,希望对你有一定的参考价值。
1、null的加(+)运算
1.1、null与
undefined
||NaN
进行加(+)运算,不分先后,结果为:NaN
。
1.2、null与null
||boolean
||number
进行加(+)运算,不分先后,结果为:数字类型
的数据,注意正负。
1.3、null与字符串
进行加(+)运算,不分先后,结果为字符串
相加,包括字符串
类型的数字
。
1.4、null与数组
进行加(+)运算时会调用.toString()
方法,不分先后,结果为:''||'1,2'||'1,2,3'
,并从左往右按字符串
相加。
1.5、null与对象
进行加(+)运算时会调用.toString()
方法,不分先后,结果为:[object Object]
,并从左往右按字符串
相加。
2、null的减(-)运算
2.1、null与
undefined
||NaN
||对象
||数组(除[]||[1]||['3']外)
,因为这些数据类型不能正常转为数字类型的字符串,所以进行减(-)运算时,不分先后,结果为:NaN
。
2.2、null与能转换为数字
类型的数据进行减(-)运算,不分先后,结果为数字
类型的数据,注意正负。console.log(null - ''); // 0
||console.log(null - []); // 0
||console.log(null - [1]); // 1
2.3、值得注意的是'true'
||'false'
是不能正常转为1 || 0。这两个值与'1'
||'0'
的转换方式不同,'1'
||'0'
可以转为1
||0
。
3、null的减(*)运算
3.1、null与
undefined
||NaN
||对象
||数组(除[]||[1]||['3']外)
,因为这些数据类型不能正常转为数字类型的字符串,所以进行乘(*)运算时,不分先后,结果为:NaN
。
3.2、null与能转换为数字
类型的数据进行乘(*)运算,不分先后,结果为:0
。
4、null的减(/)运算
4.1、null作为
除数
时,与true
||大于0的
数字类型数据
||[1]
进行除(/)运算时结果为:Infinity
。
4.2、null作为被除数
时,与大于0的数字类型
数据进行除(/)运算时,结果为:0
。
4.3、其余情况的除(/)运算结果为:NaN
。
5、null的减(%)运算
5.1、null作为
被除数
时,与true
||大于0的数字类型数据
||[1]
进行取模(%)运算时结果为:0
。
5.2、其余情况的取模(/)运算结果为:NaN
。
以上是关于JavaScript之null的加(+)减(-)乘(*)除(/)和取模(%)运算的主要内容,如果未能解决你的问题,请参考以下文章
BigDecimal数据的加 减 乘 除 N次幂运算 以及比较大小
java可以实现两个数的加·减·乘·除·运算!!!用类的方法做