JavaScript中运算符详解

JavaScript中运算符详解(1)

加性操作符之加法操作符

加性操作符包括加法和减法,值在进行加性操作符的时候会自动进行一系列的数据类型转换。

1 如果两个操作符都是数值,执行常规加法运算,如果其中一个是NaN,结果就为NaN。

2.如果有一个操作符是字符串,那么就要应用如下规则:
① 如果两个操作数都是字符串,则讲第二个操作数和第一个操作数拼接起来。

​ ②如果只有一个操作数是字符串,则将另外一个操作数转换为字符串,然后再讲两个字符串拼接起来。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rtLjgAZr-1589269246824)(C:\Users\dell\Desktop\我的前端博客\images\js11.png)]

​ ③如果有一个操作数是对象,数值或者是布尔值,则调用他们的toString()方法获取相应的字符串值,然后在应用前面的字符串规则。

<script>
	var s=88998+{x:1,y:1};//s的值为88998[object,object]
    var s1=898+[2,4,5];//898,2,4,5
    function sun(){};
    var s2=3+sun;//"3function fun(){}"
</script>

另外可以通过括号来改变运算优先级

加性操作符之减法操作符

减法操作符在执行的时候也会进行数据类型转换,但是是把所有类型的数据先转换为数字类型之后再进行计算,不能直接转数字的就先转成字符串再转换为数字

<script>
	var s=1023-"23";//1000
    var s1=1023-true;//1022
    var ss=22-[1,2,3];//NaN
    var sss=2-function fun(){};//NaN
    var ss2="s24"-"s23"//NaN
</script>

布尔操作符之与(&&)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5dHROv10-1589269246827)(C:\Users\dell\Desktop\我的前端博客\images\js22.png)]

布尔操作符之或(||)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LGoa4HAq-1589269246829)(C:\Users\dell\Desktop\我的前端博客\images\js33.png)]

布尔操作符之非(!)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-S3AxO0lZ-1589269246832)(C:\Users\dell\Desktop\我的前端博客\images\js44.png)]

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章