js null加法的处理
生活随笔
收集整理的這篇文章主要介紹了
js null加法的处理
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
首先看一段JS高級(jí)編程中,有關(guān)加法(+)操作符的解釋:
一個(gè)簡(jiǎn)單的測(cè)試:
alert(3 + null); // 3 alert('3' + null); // 3null可見(jiàn)對(duì)于null的處理,并不是簡(jiǎn)單的取String。
ecma262的定義如下:
對(duì)第7、8步驟的理解:
7. 如果lprim或者rprim有一個(gè)的類型為String的話,則執(zhí)行加法連接操作;
8. 否則,執(zhí)行Number(lprim)+Number(rpirm)
所以:
alert(3 + null);相當(dāng)于
Number(3) + Number(null) = 3 // 注:Number(null)=0相當(dāng)于
String('3') + String(null) = '3null'個(gè)人對(duì)note1的理解:除了Date對(duì)象取String外,其他的引用型對(duì)象都取Number?有待驗(yàn)證!
例1:
var x = 5; var y = new Date(); var z = x + y; alert(z); // 5Thu Nov 21 2013 08:41:51 GMT+0800 (China Standard Time)例2:
var x = '5'; // 注意區(qū)別 var y = new Date(); var z = x + y; alert(z); // 5Thu Nov 21 2013 08:46:40 GMT+0800 (China Standard Time)未完,待續(xù)..
轉(zhuǎn)載于:https://blog.51cto.com/wangyuelucky/1329365
總結(jié)
以上是生活随笔為你收集整理的js null加法的处理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 视频专辑:Hibernate 视频
- 下一篇: 博客群发(2)--实现登陆