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 相关文章推荐
ie 调试javascript的工具
Apr 29 Javascript
Prototype ObjectRange对象学习
Jul 19 Javascript
Knockout visible绑定使用方法
Nov 15 Javascript
jQuery制作的别致导航有阴影背景高亮模式窗口
Apr 15 Javascript
jQuery setTimeout传递字符串参数报错的解决方法
Jun 09 Javascript
JavaScript AJAX之惰性载入函数
Aug 27 Javascript
javascript学习之json入门
Dec 22 Javascript
BootStrap 导航条实例代码
May 18 Javascript
angular.js中解决跨域问题的三种方式
Jul 12 Javascript
Angular中ng-repeat与ul li的多层嵌套重复问题
Jul 24 Javascript
JavaScript实现学生在线做题计时器功能
Dec 05 Javascript
layer.confirm()右边按钮实现href的例子
Sep 27 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
国王的咖啡这么大来头,名字的由来是什么
2021/03/03 咖啡文化
基于PHP+Mysql简单实现了图书购物车系统的实例详解
2020/08/06 PHP
js和html5实现手机端刮刮卡抽奖效果完美兼容android/IOS
2013/11/18 Javascript
node.js中的http.request方法使用说明
2014/12/14 Javascript
JavaScript类继承及实例化的方法
2015/07/25 Javascript
js实现商城星星评分的效果
2015/12/29 Javascript
详解webpack的配置文件entry与output
2017/08/21 Javascript
Node之简单的前后端交互(实例讲解)
2017/11/14 Javascript
不使用 JS 匿名函数理由
2017/11/17 Javascript
在vue中通过axios异步使用echarts的方法
2018/01/13 Javascript
详解Webpack loader 之 file-loader
2018/11/07 Javascript
微信小程序获取地理位置及经纬度授权代码实例
2019/09/18 Javascript
JavaScript canvas绘制渐变颜色的矩形
2020/02/18 Javascript
Webpack中SplitChunksPlugin 配置参数详解
2020/03/24 Javascript
Python操作Mysql实例代码教程在线版(查询手册)
2013/02/18 Python
跟老齐学Python之从格式化表达式到方法
2014/09/28 Python
Python 基础教程之包和类的用法
2017/02/23 Python
Python学习教程之常用的内置函数大全
2017/07/14 Python
Python Tkinter实现简易计算器功能
2018/01/30 Python
Django实现分页功能
2018/07/02 Python
Python docx库用法示例分析
2019/02/16 Python
numpy和pandas中数组的合并、拉直和重塑实例
2019/06/28 Python
Python中如何将一个类方法变为多个方法
2019/12/30 Python
Python urlopen()和urlretrieve()用法解析
2020/01/07 Python
Python3爬虫关于代理池的维护详解
2020/07/30 Python
金牌葡萄酒俱乐部:Gold Medal Wine Club
2017/11/02 全球购物
俄罗斯最大的灯具网站:Fandeco
2020/03/14 全球购物
实习心得体会
2014/01/02 职场文书
好家长事迹材料
2014/01/23 职场文书
支部鉴定材料
2014/06/02 职场文书
大学生交通专业求职信
2014/09/01 职场文书
认真学习保证书
2015/02/26 职场文书
开工典礼致辞
2015/07/29 职场文书
《草船借箭》教学反思
2016/02/23 职场文书
Python字符串对齐方法使用(ljust()、rjust()和center())
2021/04/26 Python
整理Python中常用的conda命令操作
2021/06/15 Python