博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
加号+和减号-
阅读量:6972 次
发布时间:2019-06-27

本文共 895 字,大约阅读时间需要 2 分钟。

hot3.png

ps:记录自己不是特别清楚的部分

加号

tip1、如果两个操作数都是字符串,就拼接;

tip2、如果有一个是字符串,则另外一个操作数转换成字符串,然后在拼接

tip3、如果一个操作数是对象、数值或者boolean,则调用它们的toString()方法,在按照上面的规则来;

tip4、如果有一个操作数为null,而另外一个为数值,则把null转换成0,在做运算;

tip5、如果有一个操作数为undefined,另一个为数值,则返回NaN

tip6、如果有一个操作数为null,而另外一个为非数值,则null调用String()方法转成字符串,在做拼接;

tip7、如果有一个操作数为undefined,另一个为非数值,则undefined调用String()方法转成字符串,在做拼接;

举例子:

console.log(5+undefined)//NaN        console.log("5"+undefined)//'5undefined'        console.log(5+null)//5        console.log('5'+null)//'5null'

减号

tip1、如果一个操作数为字符串、boolean、null、undefined,则先调用Number()将其转换为一个数值,在做减法运算,如果转换的结果是非数值的,则最终结果为NaN;

tip2、如果一个操作数是对象,则调用其valueOf()方法,如果转换的结果为非数值的 ,则最终结果为NaN; 如果对象没有valueOf() 方法,则调用toString()方法,转换成字符串,在将字符串转成数值,在做运算;

大概举几个例子:

console.log(5-undefined)//NaN        console.log("5"-undefined)//NaN        console.log(5-null)//5        console.log('5'-null)//5

转载于:https://my.oschina.net/u/3407699/blog/1647513

你可能感兴趣的文章
QButtonGroup:按钮类的非可视化容器,默认可实现按钮的子类实例的单选。
查看>>
教你怎么判断手机是否已安装某程序,然后调用该程序
查看>>
设置Linux时间 同步时间
查看>>
KNN
查看>>
新建虚拟SAN
查看>>
python并发编程之IO模型(Day38)
查看>>
mysql 架构篇系列 2 复制架构一主一从搭建(异步复制)
查看>>
实用工具箱app开发日记5
查看>>
Python基础—编码(Day2)
查看>>
用几句话说一说CMake add_dependencies & target_link_libraries的使用区别
查看>>
Qt Linguist的使用
查看>>
《高性能javascript》读书笔记:第三章 DOM编程
查看>>
SQL随笔_2
查看>>
ERLANG学习总结<二>
查看>>
定义一个返回调用参数函数两次的函数的函数
查看>>
完成评论功能
查看>>
面向对象进阶--转换构造函数,重载,类型转换函数
查看>>
设计模式(抽象工厂模式)
查看>>
制作一个银行卡用户登录页面,提交后连接数据库进行登录验证,根据验证结果跳转到不同页面...
查看>>
伪类链接
查看>>