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 相关文章推荐
JS正则表达式大全(整理详细且实用)
Nov 14 Javascript
jQuery之字体大小的设置方法
Feb 27 Javascript
JavaScript异步编程Promise模式的6个特性
Apr 03 Javascript
javascript使用window.open提示“已经计划系统关机”的原因
Aug 15 Javascript
javascript中2个感叹号的用法实例详解
Sep 04 Javascript
推荐一个自己用的封装好的javascript插件
Jan 29 Javascript
[原创]js实现保存文本框内容为本地文件兼容IE,chrome,火狐浏览器
Feb 14 Javascript
vue引入js数字小键盘的实现代码
May 14 Javascript
js实现简易计算器功能
Oct 18 Javascript
vue.js实现左边导航切换右边内容
Oct 21 Javascript
vue改变循环遍历后的数据实例
Nov 07 Javascript
Antd的Table组件嵌套Table以及选择框联动操作
Oct 24 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
php提示Call-time pass-by-reference has been deprecated in的解决方法[已测]
2012/05/06 PHP
php读取目录及子目录下所有文件名的方法
2014/10/20 PHP
php插入排序法实现数组排序实例
2015/02/16 PHP
Win7环境下Apache连接MySQL提示连接已重置的解决办法
2017/05/09 PHP
PHP实现的mysql主从数据库状态检测功能示例
2017/07/20 PHP
php伪静态验证码不显示的解决方案
2019/09/26 PHP
javascript 处理事件绑定的一些兼容写法
2009/12/24 Javascript
firefox firebug中文入门教程 脚本之家新年特别版
2010/01/02 Javascript
远离JS灾难css灾难之 js私有函数和css选择器作为容器
2011/12/11 Javascript
JS实现定时页面弹出类似QQ新闻的提示框
2013/11/07 Javascript
jQuery实现table隔行换色和鼠标经过变色的两种方法
2014/06/15 Javascript
针对初学者的jQuery入门指南
2015/08/15 Javascript
全面解析Bootstrap中nav、collapse的使用方法
2016/05/22 Javascript
jQuery利用sort对DOM元素进行排序操作
2016/11/07 Javascript
JS给按钮添加跳转功能类似a标签
2017/05/30 Javascript
鼠标拖动改变DIV等网页元素的大小的实现方法
2017/07/06 Javascript
JS实现上传图片的三种方法并实现预览图片功能
2017/07/14 Javascript
vue 中动态绑定class 和 style的方法代码详解
2018/06/01 Javascript
详解Vue Elementui中的Tag与页面其它元素相互交互的两三事
2018/09/25 Javascript
微信小程序生成海报分享朋友圈的实现方法
2019/05/06 Javascript
CountUp.js数字滚动插件使用方法详解
2019/10/17 Javascript
AngularJS动态生成select下拉框的方法实例
2019/11/17 Javascript
pycharm 使用心得(三)Hello world!
2014/06/05 Python
Python决策树之基于信息增益的特征选择示例
2018/06/25 Python
Django crontab定时任务模块操作方法解析
2020/09/10 Python
基于html5 DeviceOrientation 实现微信摇一摇功能
2015/09/25 HTML / CSS
雅诗兰黛香港官网:Estee Lauder香港
2017/09/26 全球购物
全球在线商店:BerryLook
2019/04/14 全球购物
毕业晚会主持词
2014/03/24 职场文书
企业职业病防治方案
2014/05/29 职场文书
2014中考励志标语
2014/06/05 职场文书
骆驼祥子读书笔记
2015/06/26 职场文书
电力企业职工培训心得体会
2016/01/11 职场文书
2016年国培心得体会及反思
2016/01/13 职场文书
Python利用机器学习算法实现垃圾邮件的识别
2021/06/28 Python
【海涛DOTA解说】EVE女子战队独家录像加ZSMJ神牛两连发
2022/04/01 DOTA