JavaScript 加号(+)运算符号


Posted in Javascript onDecember 06, 2009

一,对于引用类型对象(我指的是String,Date,Object,Array,Function,Boolean)的+运算符运算过程如下!
1,首先调用此对象的valueOf方法,得到返回数值A
2,然后把此数值A转换成数字,得到的是最终数值

我的测试如下:

function w(s){ 
document.writeln("<br/>"); 
document.writeln(s); 
document.writeln("<br/>-----------------------------"); 
} 
String.prototype.valueOf=function(){return 1;}; 
w(+new String("sss"));//输出1 
String.prototype.valueOf=function(){return "a";}; 
w(+new String("sss"));//输出NaN 
Date.prototype.valueOf=function(){return 1;}; 
w(+new Date());//输出1 
Date.prototype.valueOf=function(){return "a";}; 
w(+new Date());//输出NaN 
Object.prototype.valueOf=function(){return 1;}; 
w(+{});//输出1 
Object.prototype.valueOf=function(){return "a";}; 
w(+{});//输出NaN 
Array.prototype.valueOf=function(){return 1;}; 
w(+[]);//输出1 
Array.prototype.valueOf=function(){return "a";}; 
w(+[]);//输出NaN 
var s=function(){}; 
Function.prototype.valueOf=function(){return 1;}; 
w(+s);//输出1 
Function.prototype.valueOf=function(){return "a";}; 
w(+s);//输出NaN 
Boolean.prototype.valueOf=function(){return 1;}; 
w(+new Boolean());//输出1 
Boolean.prototype.valueOf=function(){return "a";}; 
w(+new Boolean());//输出NaN

二,对于基本数据数据类型,其值转换成数字
w(+5);//输出5 
w(+true);//输出1 
w(+false);//输出0 
w(+"ss");//输出NaN 
w(+"111");//输出111
Javascript 相关文章推荐
jQuery Ajax文件上传(php)
Jun 16 Javascript
Js数组的操作push,pop,shift,unshift等方法详细介绍
Dec 28 Javascript
gulp-uglify 与gulp.watch()配合使用时报错(重复压缩问题)
Aug 24 Javascript
如何解决hover在ie6中的兼容性问题
Dec 15 Javascript
基于bootstrap按钮式下拉菜单组件的搜索建议插件
Mar 25 Javascript
Angularjs使用指令做表单校验的方法
Mar 31 Javascript
Node.js 实现简单的接口服务器的实例代码
May 23 Javascript
微信小程序module.exports模块化操作实例浅析
Dec 20 Javascript
JS实现数组去重及数组内对象去重功能示例
Feb 02 Javascript
微信小程序-form表单提交代码实例
Apr 29 Javascript
微信小程序数据统计和错误统计的实现方法
Jun 26 Javascript
js简单粗暴的发布订阅示例代码
Jan 23 Javascript
javascript Demo模态窗口
Dec 06 #Javascript
jquery select操作的日期联动实现代码
Dec 06 #Javascript
JSON 编辑器实现代码
Dec 06 #Javascript
JS 控制非法字符的输入代码
Dec 04 #Javascript
对采用动态原型方式无法展示继承机制得思考
Dec 04 #Javascript
JavaScript 申明函数的三种方法 每个函数就是一个对象(一)
Dec 04 #Javascript
javascript 跳转代码集合
Dec 03 #Javascript
You might like
基于Snoopy的PHP近似完美获取网站编码的代码
2011/10/23 PHP
用PHP+MySQL搭建聊天室功能实例代码
2012/08/20 PHP
PHP的foreach中使用引用时需要注意的一个问题和解决方法
2014/05/29 PHP
PHP实现Session入库/存入redis的方法
2017/05/04 PHP
PHP文件系统管理(实例讲解)
2017/09/19 PHP
PHP pthreads v3使用中的一些坑和注意点分析
2020/02/21 PHP
学习ExtJS fit布局使用说明
2009/10/08 Javascript
一样的table?不一样的table(可编辑状态table)
2012/09/19 Javascript
js批量设置样式的三种方法不推荐使用with
2013/02/25 Javascript
js模仿jquery的写法示例代码
2013/06/16 Javascript
JavaScript定义类的几种方式总结
2014/01/06 Javascript
window.onload使用指南
2015/09/13 Javascript
jQuery实现查找链接文字替换属性的方法
2016/06/27 Javascript
ES6中Iterator与for..of..遍历用法分析
2017/03/31 Javascript
详解webpack babel的配置
2018/01/09 Javascript
JavaScript实现美化滑块效果
2019/05/17 Javascript
[59:36]2018DOTA2亚洲邀请赛 4.3 突围赛 Secret vs VG 第二场
2018/04/04 DOTA
[52:32]完美世界DOTA2联赛PWL S2 Magma vs LBZS 第三场 11.18
2020/11/18 DOTA
Python os模块介绍
2014/11/30 Python
python实现list元素按关键字相加减的方法示例
2017/06/09 Python
使用python对文件中的单词进行提取的方法示例
2018/12/21 Python
简单了解python关系(比较)运算符
2019/07/08 Python
Python操作Sonqube API获取检测结果并打印过程解析
2019/11/27 Python
pytorch下使用LSTM神经网络写诗实例
2020/01/14 Python
python使用信号量动态更新配置文件的操作
2020/04/01 Python
Python sklearn中的.fit与.predict的用法说明
2020/06/28 Python
中西医结合临床医学专业大学生自荐信
2013/09/28 职场文书
大学生大二自我鉴定
2013/10/28 职场文书
《世界多美呀》教学反思
2014/03/02 职场文书
硕士生工作推荐信
2014/03/07 职场文书
群众路线组织生活会发言材料
2014/10/17 职场文书
公证书格式
2015/01/23 职场文书
学校开除通知书
2015/04/25 职场文书
2016幼儿园教师节新闻稿
2015/11/25 职场文书
Java实现房屋出租系统详解
2021/10/05 Java/Android
我家女友可不止可爱呢 公开OP主题曲无字幕动画MV
2022/04/11 日漫