JavaScript中的object转换函数toString()与valueOf()介绍


Posted in Javascript onDecember 31, 2014

JavaScript中,object转换为boolean的操作非常简单:所有的object转换成boolean后均为true;即使是new Boolean(false)这样的object在转换为boolean后仍然为true。

var x = new Boolean(false);

if(x){

  console.log("x is true");

}

在将object转换为string或者number时,JavaScript会调用object的两个转换函数:toString()与valueOf()。

toString()

toString()函数的作用是返回object的字符串表示,JavaScript中object默认的toString()方法返回字符串”[object Object]“。定义类时可以实现新的toString()方法,从而返回更加具有可读性的结果。JavaScript对于数组对象、函数对象、正则表达式对象以及Date日期对象均定义了更加具有可读性的toString()方法:

1.array的toString()方法将返回以逗号分隔的数组成员。比如,[1,2,3].toString()会返回字符串”1,2,3″。

2.function的toString()方法将返回函数的文本定义。比如,(function(x){return x*2;}).toString()会返回字符串”function(x){return x*2;}”。

3.RegExp的toString()方法与function的toString()方法类似,将返回正则表达式的文本定义。比如,/\d+/g.toString()会返回字符串”/\\d+/g”。

4.Date的toString()方法将返回一个具有可读性的日期时间字符串。

valueOf()

valueOf()函数的作用是返回object的数值表示,JavaScript中object默认的valueOf()方法会返回该object自身。与toString()一样,定义类时可以实现新的valueOf()方法,从而返回需要的结果。JavaScript对于Date对象定义了更加具有可读性的valueOf()方法:

1.Date的valueOf()方法将返回一个数值,该数值为Date对象与1970年1月1日零时的时间差(以毫秒为单位)。

Javascript 相关文章推荐
JavaScript Cookie的读取和写入函数
Dec 08 Javascript
js截取函数(indexOf,join等)
Sep 01 Javascript
Three.js源码阅读笔记(物体是如何组织的)
Dec 27 Javascript
javascript中动态加载js文件多种解决办法总结
Nov 15 Javascript
JavaScript 深层克隆对象详解及实例
Nov 03 Javascript
利用HTML5+Socket.io实现摇一摇控制PC端歌曲切换
Jan 13 Javascript
canvas红包照片实例分享
Feb 28 Javascript
JS对象与JSON互转换、New Function()、 forEach()、DOM事件流等js开发基础小结
Aug 10 Javascript
微信小程序商品详情页规格属性选择示例代码
Oct 30 Javascript
jQuery中DOM操作原则实例分析
Aug 01 jQuery
js实现图片无缝循环轮播
Oct 28 Javascript
原生js实现随机点餐效果
Dec 10 Javascript
JavaScript中的object转换成number或string规则介绍
Dec 31 #Javascript
javascript 事件处理示例分享
Dec 31 #Javascript
JavaScript中的变量作用域介绍
Dec 31 #Javascript
JavaScript中的变量定义与储存介绍
Dec 31 #Javascript
JavaScript中的操作符==与===介绍
Dec 31 #Javascript
jQuery中[attribute]选择器用法实例
Dec 31 #Javascript
JavaScript中的比较操作符>、=、
Dec 31 #Javascript
You might like
BBS(php & mysql)完整版(二)
2006/10/09 PHP
兼容各大浏览器带关闭按钮的漂浮多组图片广告代码
2014/06/05 PHP
php 魔术常量详解及实例代码
2016/12/04 PHP
学习js所必须要知道的一些
2007/03/07 Javascript
jquery.cookie.js 操作cookie实现记住密码功能的实现代码
2011/04/27 Javascript
js禁止回车提交表单的示例代码
2013/12/23 Javascript
js判断一个字符串是否包含一个子串的方法
2015/01/26 Javascript
js文本框走动跑马灯效果代码分享
2015/08/25 Javascript
JS实现漂亮的窗口拖拽效果(可改变大小、最大化、最小化、关闭)
2015/10/10 Javascript
JavaScript面向对象分层思维全面解析
2016/11/22 Javascript
JS排序之选择排序详解
2017/04/08 Javascript
vue实现样式之间的切换及vue动态样式的实现方法
2017/12/19 Javascript
使用vuex缓存数据并优化自己的vuex-cache
2018/05/30 Javascript
记一次webpack3升级webpack4的踩坑经历
2018/06/12 Javascript
微信小程序代码上传、审核发布小程序
2019/05/18 Javascript
详解从vue-loader源码分析CSS Scoped的实现
2019/09/23 Javascript
javaScript中indexOf用法技巧
2019/11/26 Javascript
[34:10]Secret vs VG 2019国际邀请赛淘汰赛 败者组 BO3 第二场 8.24
2019/09/10 DOTA
[02:42]岂曰无衣,与子同袍!DOTA2致敬每一位守护人
2020/02/17 DOTA
在Python的Flask框架中实现单元测试的教程
2015/04/20 Python
Python读写txt文本文件的操作方法全解析
2016/06/26 Python
Python+树莓派+YOLO打造一款人工智能照相机
2018/01/02 Python
python取数作为临时极大值(极小值)的方法
2018/10/15 Python
pyqt5中动画的使用详解
2020/04/01 Python
python实现简单学生信息管理系统
2020/04/09 Python
python 中的命名空间,你真的了解吗?
2020/08/19 Python
python pymysql库的常用操作
2020/10/16 Python
使用python实现学生信息管理系统
2021/02/25 Python
给定一个时间点,希望得到其他时间点
2013/11/07 面试题
高中物理教学反思
2014/02/08 职场文书
毕业生工作求职信
2014/06/30 职场文书
生产操作工岗位职责
2014/09/16 职场文书
群众路线教育实践活动心得体会(四风)
2014/11/03 职场文书
2014年小学辅导员工作总结
2014/12/23 职场文书
归途列车观后感
2015/06/17 职场文书
Python turtle编写简单的球类小游戏
2022/03/31 Python