首先看一段JS高级编程中,有关加法(+)操作符的解释:

一个简单的测试:

alert(3 + null); // 3
alert('3' + null); // 3null

可见对于null的处理,并不是简单的取String。

ecma262的定义如下:

对第7、8步骤的理解:

7. 如果lprim或者rprim有一个的类型为String的话,则执行加法连接操作;

8. 否则,执行Number(lprim)+Number(rpirm)

所以:

alert(3 + null);

相当于

Number(3) + Number(null) = 3 // 注:Number(null)=0
alert('3' + null);

相当于

String('3') + String(null) = '3null'

个人对note1的理解:除了Date对象取String外,其他的引用型对象都取Number?有待验证!

例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';  // 注意区别
var y = new Date();
var z = x + y;
alert(z); // 5Thu Nov 21 2013 08:46:40 GMT+0800 (China Standard Time)

未完,待续..

转载于:https://blog.51cto.com/wangyuelucky/1329365

js null加法的处理相关推荐

  1. js null undefine

    原文链接: js null undefine 上一篇: dom 2 xlsx 下一篇: js new 运算符 自定义实现 https://www.cnblogs.com/qyzy1024/p/4036 ...

  2. js null ,null没有typeof返回值为undefine 即 null没有返回类型的

    var user="<%=session.getAttribute("username")%>"; alert(user); alert(user. ...

  3. JavaScript检查null与undefined以及==和===之间的差异

    如何检查变量是否为null或undefined并且null和undefined什么区别? ==和===什么区别(很难在Google上搜索" ===")? #1楼 区别是微妙的. 在 ...

  4. JavaScript使用localStorage缓存Js和css文件

    对于WebApp来说,将js css文件缓存到localstorage区可以减少页面在加载时与HTTP请求的交互次数,从而优化页面的加载时间.特别是当移端信号不好高延迟时优化效果还是很显见的 下面的代 ...

  5. android webview js 失效,Android WebView注入JQuery、JS脚本及执行无效的问题解决

    在项目中遇到JQuery注入后,执行无效的问题. 我们知道必须在网页加载完成后,也就是在onPageFinished()方法被调用后才能执行被注入的JS. 但是在有些手机上并不能成功执行,我的解决方案 ...

  6. vue 引用src中的文件_Vue中引用第三方JS文件

    使用Vue时会经常使用jQuery.bootstrap这类第三方工具库,而boostrap的渲染不仅依赖于jQuery js文件的加载,也依赖于HTML中DOM树内容的加载.但Vue中DOM树是有Vu ...

  7. 安卓运行js代码-完美

    前言 安卓里面做边缘计算的功能,需要动态编辑js代码执行 巨坑 java里面有ScriptEngineManager类,可以执行js 但在安卓里面没有这个类,javax下面的都不能执行 网上说的安卓里 ...

  8. 运用Rhino,在Android上运行js代码

    简单记录如何运用Rhino 在这里不过多赘述rhino,百度以及官网到处都是介绍,本文只提供我自己封装的工具类,用于处理运行js代码(字符串形式),返回js对象或者String.支持es5语法,支持部 ...

  9. node.js自学基础笔记

    Node.js 学习目标 能够知道什么是node.js 能够知道node.js可以做什么 能够说出node.js中javascript的组成部分 能够使用path模块处理模块路径 能够使用http模块 ...

最新文章

  1. php 获取日期标签的值,在php中获取标签的选定索引值
  2. python自动化测试看什么书-Python自动化测试入门,看这一篇就足以
  3. Redis的两种消息模式
  4. 深度学习目标检测中计算目标的AP(average precision)平均精度、有什么用?
  5. 第十周项目1-程序填充与阅读(三)
  6. SCUT - 244 - 全新的游戏 - 凸包
  7. 癌细胞检测,只要0.0758秒 | 谷歌AR+AI显微镜问世
  8. Kubernetes集群的安装部署
  9. EvilAP_Defender:可以警示和攻击 WIFI 热点陷阱的工具
  10. location.href参数丢失
  11. mysql创建视图的sql语句_MySQL数据库创建视图
  12. 上海“随申码”研发幕后::倒排期的3天!
  13. 知道创宇爬虫题--代码持续更新中
  14. Auto.js Pro安卓免ROOT引流脚本开发系列教程26网易公开课(4)-关注用户
  15. mysql重复数据只取一条数据_sql不重复的查找统计数据(经典)
  16. sonarqube如何导入规则_sonar如何添加自定义JAVA规则
  17. 游戏数据库版本更新神器Flyway
  18. 某电商用户行为分析-提升GMV
  19. python实战扫码下载_Python实例 一 12306抢票(一)扫码登陆
  20. 网页刷流量软件开发中的困惑

热门文章

  1. 《爆发》作者:大数据领域将有新赢家
  2. Angular2中的路由(简单总结)
  3. saltstack的状态文件
  4. [华清远见]FPGA公益培训
  5. 提高ASP.NET首页性能的十大方法
  6. #周末课堂# 赵扬老师 Android系列课程【ListView完全解析、Memory in Android】(火热报名中~~~)...
  7. 图表中各个参数的应用( AChartEngine XMultipleSeriesRenderer
  8. 18秋学期《计算机网络》在线作业,18秋北交《计算机应用基础及计算机网络与应用》在线作业一-2辅导资料.docx...
  9. html中样式表的三种形式,CSS样式表有几种存在方式
  10. PHP Token(令牌)设计