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 相关文章推荐
ext 同步和异步示例代码
Sep 18 Javascript
jquery(live)中File input的change方法只起一次作用的解决办法
Oct 21 Javascript
javascript游戏开发之《三国志曹操传》零部件开发(二)人物行走的实现
Jan 23 Javascript
javascript中处理时间戳为日期格式的方法
Jan 02 Javascript
javascript操作select元素实例分析
Mar 27 Javascript
JavaScript返回上一页的三种方法及区别介绍
Jul 04 Javascript
小巧强大的jquery layer弹窗弹层插件
Dec 06 Javascript
vue.js初学入门教程(2)
Nov 07 Javascript
Angular使用过滤器uppercase/lowercase实现字母大小写转换功能示例
Mar 27 Javascript
vuex 动态注册方法 registerModule的实现
Jul 03 Javascript
在vscode 中设置 vue模板内容的方法
Sep 02 Javascript
解决Can't find variable: SockJS vue项目的问题
Sep 22 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
使用JSON实现数据的跨域传输的php代码
2011/12/20 PHP
php输出金字塔的2种实现方法
2014/12/16 PHP
Yii 2.0中场景的使用教程
2017/06/02 PHP
Javascript 面向对象 继承
2010/05/13 Javascript
获取3个数组不重复的值的具体实现
2013/12/30 Javascript
jQuery遍历之next()、nextAll()方法使用实例
2014/11/08 Javascript
js实现点击添加一个input节点
2014/12/05 Javascript
详解XMLHttpRequest(二)响应属性、二进制数据、监测上传下载进度
2016/09/14 Javascript
jQuery实现磁力图片跟随效果完整示例
2016/09/16 Javascript
JS产生随机数的用法小结
2016/12/10 Javascript
Javascript中return的使用与闭包详解
2017/01/11 Javascript
vue+element+Java实现批量删除功能
2019/04/08 Javascript
Vue使用Proxy监听所有接口状态的方法实现
2019/06/07 Javascript
解决antd 表单设置默认值initialValue后验证失效的问题
2020/11/02 Javascript
Python模块学习 filecmp 文件比较
2012/08/27 Python
python类参数self使用示例
2014/02/17 Python
Python3基础之list列表实例解析
2014/08/13 Python
Python中使用PIL库实现图片高斯模糊实例
2015/02/08 Python
python生成随机密码或随机字符串的方法
2015/07/03 Python
python+ffmpeg视频并发直播压力测试
2018/03/06 Python
PyQt5每天必学之像素图控件QPixmap
2018/04/19 Python
更换Django默认的模板引擎为jinja2的实现方法
2018/05/28 Python
使用CSS3实现字体颜色渐变的实现
2020/08/10 HTML / CSS
HTML5中的Web Notification桌面通知功能的实现方法
2019/07/29 HTML / CSS
MANGO官方网站:西班牙芒果服装品牌
2017/01/15 全球购物
英国广泛的照明产品网站:Lights4living
2018/01/28 全球购物
标准导师推荐信(医学类)
2013/10/28 职场文书
打造完美自荐信
2014/01/24 职场文书
财政专业求职信范文
2014/02/19 职场文书
大学生心理活动总结
2014/07/04 职场文书
辞旧迎新演讲稿
2014/09/15 职场文书
八项规定个人对照检查材料思想汇报
2014/09/25 职场文书
2015年小学开学寄语
2015/02/27 职场文书
业务内勤岗位职责
2015/04/13 职场文书
2015年度内部审计工作总结
2015/05/20 职场文书
教师师德承诺书2016
2016/03/25 职场文书