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 相关文章推荐
关于document.cookie的使用javascript
Apr 11 Javascript
JavaScript中判断页面关闭、页面刷新的实现代码
Aug 27 Javascript
js动态切换图片的方法
Jan 20 Javascript
jQuery实现可高亮显示的二级CSS菜单效果
Sep 01 Javascript
javascript中window.open在原来的窗口中打开新的窗口(不同名)
Nov 15 Javascript
今天抽时间给大家整理jquery和ajax的相关知识
Nov 17 Javascript
如何使用Bootstrap的modal组件自定义alert,confirm和modal对话框
Mar 01 Javascript
json传值以及ajax接收详解
May 24 Javascript
3kb jQuery代码搞定各种树形选择的实现方法
Jun 10 Javascript
jQuery命名空间与闭包用法示例
Jan 12 Javascript
webpack css加载和图片加载的方法示例
Sep 11 Javascript
jQuery创建折叠式菜单
Jun 15 jQuery
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用mysql_insert_id()函数获得刚插入数据或当前发布文章的ID
2016/11/25 PHP
PHP 断点续传实例详解
2017/11/11 PHP
自定义Laravel (monolog)日志位置,并增加请求ID的实现
2019/10/17 PHP
Javascript 阻止javascript事件冒泡,获取控件ID值
2009/06/27 Javascript
jQuery EasyUI API 中文文档 - ProgressBar 进度条
2011/09/29 Javascript
javascript 树形导航菜单实例代码
2013/08/13 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
2014/09/09 Javascript
jQuery实现预加载图片的方法
2015/03/17 Javascript
JQuery中attr方法和removeAttr方法用法实例
2015/05/18 Javascript
javascript省市区三级联动下拉框菜单实例演示
2015/11/29 Javascript
详解webpack 配合babel 将es6转成es5 超简单实例
2017/05/02 Javascript
jQuery扩展_动力节点Java学院整理
2017/07/05 jQuery
详解从买域名到使用pm2部署node.js项目全过程
2018/03/07 Javascript
NVM安装nodejs的方法实用步骤
2019/01/16 NodeJs
React 组件渲染和更新的实现代码示例
2019/02/21 Javascript
使用weixin-java-miniapp配置进行单个小程序的配置详解
2019/03/29 Javascript
jquery实现二级导航下拉菜单效果实例
2019/05/14 jQuery
JS在Array数组中按指定位置删除或添加元素对象方法示例
2019/11/19 Javascript
vue实现防抖的实例代码
2021/01/11 Vue.js
Python数据类型详解(三)元祖:tuple
2016/05/08 Python
Python图像处理PIL各模块详细介绍(推荐)
2019/07/17 Python
python二元表达式用法
2019/12/04 Python
PyQt5实现画布小程序
2020/05/30 Python
pytorch VGG11识别cifar10数据集(训练+预测单张输入图片操作)
2020/06/24 Python
学点简单的Django之第一个Django程序的实现
2021/02/24 Python
爱普生美国官网:Epson美国
2018/11/05 全球购物
Europcar比利时:租车
2019/08/26 全球购物
中科软测试工程师面试题
2012/06/16 面试题
电信专业毕业生推荐信
2013/11/18 职场文书
生物科学专业个人求职信范文
2013/12/07 职场文书
喷漆工的岗位职责
2014/03/17 职场文书
群教班子对照检查材料
2014/08/26 职场文书
2015年安全生产责任书
2015/01/30 职场文书
2015年民主评议党员工作总结
2015/05/19 职场文书
基于angular实现树形二级表格
2021/10/16 Javascript
Java界面编程实现界面跳转
2022/06/16 Java/Android