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 相关文章推荐
jsTree 基于JQuery的排序节点 Bug
Jul 26 Javascript
jquery库或JS文件在eclipse下报错问题解决方法
Apr 17 Javascript
构造函数+原型模式构造js自定义对象(最通用)
May 12 Javascript
js读取json的两种常用方法示例介绍
Oct 19 Javascript
浅谈Javascript中的Function与Object
Jan 26 Javascript
今天抽时间给大家整理jquery和ajax的相关知识
Nov 17 Javascript
vue学习之mintui picker选择器实现省市二级联动示例
Oct 12 Javascript
Node.js使用Express.Router的方法
Nov 14 Javascript
vue.js层叠轮播效果的实例代码
Nov 08 Javascript
使用node-media-server搭建一个简易的流媒体服务器
Jan 20 Javascript
JS中锚点链接点击平滑滚动并自由调整到顶部位置
Feb 06 Javascript
如何用JavaScript检测当前浏览器是无头浏览器
Apr 27 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
php ignore_user_abort与register_shutdown_function 使用方法
2009/06/14 PHP
phpMyAdmin出现无法载入 mcrypt 扩展,请检查PHP配置的解决方法
2012/03/26 PHP
使用 PHPMAILER 发送邮件实例应用
2012/11/07 PHP
zend框架实现支持sql server的操作方法
2016/12/08 PHP
php获取文章内容第一张图片的方法示例
2017/07/03 PHP
PHP基于redis计数器类定义与用法示例
2018/02/08 PHP
JavaScript使用技巧精萃[代码非常实用]
2008/11/21 Javascript
Javascript 面向对象编程(coolshell)
2012/03/18 Javascript
jQuery 淡出一个图像到另一个图像的实现代码
2013/06/12 Javascript
一个简单的实现下拉框多选的插件可移植性比较好
2014/05/05 Javascript
Javascript前端UI框架Kit使用指南之kitjs的对话框组件
2014/11/28 Javascript
JavaScript中函数声明与函数表达式的区别详解
2016/08/18 Javascript
JS扩展类,克隆对象与混合类实例分析
2016/11/26 Javascript
对vue v-if v-else-if v-else 的简单使用详解
2018/09/29 Javascript
微信小程序实现bindtap等事件传参
2019/04/08 Javascript
python 生成不重复的随机数的代码
2011/05/15 Python
浅谈Python爬虫基本套路
2019/03/25 Python
python3+PyQt5 使用三种不同的简便项窗口部件显示数据的方法
2019/06/17 Python
python 寻找离散序列极值点的方法
2019/07/10 Python
django 做 migrate 时 表已存在的处理方法
2019/08/31 Python
Python迭代器iterator生成器generator使用解析
2019/10/24 Python
Python判断变量是否是None写法代码实例
2020/10/09 Python
阿迪达斯比利时官方商城:adidas比利时
2016/10/10 全球购物
简历上的自我评价
2014/02/03 职场文书
责任心演讲稿
2014/05/14 职场文书
金融系应届毕业生求职信
2014/05/26 职场文书
医院反腐倡廉演讲稿
2014/09/16 职场文书
2014入党积极分子批评与自我批评思想报告
2014/10/06 职场文书
2015年房产销售工作总结范文
2015/05/22 职场文书
房屋质量投诉书
2015/07/02 职场文书
2016年师德先进个人事迹材料
2016/02/29 职场文书
golang 在windows中设置环境变量的操作
2021/04/29 Golang
解决python绘图使用subplots出现标题重叠的问题
2021/04/30 Python
Java实现多文件上传功能
2021/06/30 Java/Android
python自动化八大定位元素讲解
2021/07/09 Python
Python内置数据结构列表与元组示例详解
2021/08/04 Python