对象的 valueOf 方法
对象的 valueOf 方法
Object.prototype.valueOf()
该方法返回指定对象的原始值,若对象没有原始值,则将返回对象本身。通常由 JavaScript 内部调用,而不是在代码中显式调用。当遇到需要使用预期的原始值的对象时(比如对象的强制类型转换),JavaScript 会自动调用它。
不同类型对象的 valueOf() 方法的返回值
对象 | 返回值 |
---|---|
Number | 数字的基本类型值 |
Boolean | 基本类型布尔值 |
String | 基本类型字符串 |
RegExp | 正则表达式本身 |
Object | 对象本身 |
Function | 函数本身 |
Array | 数组本身 |
Date | 是从 1970 年 1 月 1 日午夜开始计的毫秒数 UTC |
Math 和 Error 对象没有 valueOf 方法。
对象的 Symbol.toPrimitive 属性
对象的 Symbol.toPrimitive 属性指向一个方法。基本类型 string、number、boolean 的封装对象调用这个方法时会返回该对象对应的原始类型值。
该方法作用同 valueOf() 一样,但是优先级要高于 valueOf()。
Symbol.toPrimitive 被调用时,会接受一个字符串参数,表示当前运算的模式,一共有三种模式。
- number:该场合需要转成数值
- string:该场合需要转成字符串
- default:该场合可以转成数值,也可以转成字符串
对象的强制类型换
对象在进行强制类型转换为基本类型的值时,会首先被转换为相应的基本类型的值(例如String\Number\Boolean对象),以ToNumber为例,如果返回的是非数字的基本类型值,则会再按照基本类型之间的转换规则进行强制转换。
为了将值转换为相应的基本类型值,抽象操作 ToPrimitive 会首先检查该值是否有 value0f() 方法。如果有并且返回基本类型值,就使用该值进行强制类型转换。如果没有就使用 toString() 的返回值 (如果存在) 来进行强制类型转换。
如果 value0f() 和 toString() 均不返回基本类型值,会产生 TypeError 错误。
对象的 valueOf 方法相关推荐
- 学习JS基本数据类型与对象的valueOf方法
https://blog.csdn.net/licheng11403080324/article/details/60128090 https://yq.aliyun.com/articles/399 ...
- 开课吧Java课堂:如何利用valueOf( )方法实现数据转换
valueOf( )方法将数据的内部格式转换为可读的形式.它是一种静态方法,对于所有Java内置的类型,在字符串(String)内被重载,以便每一种类型都能被转换成字符串. valueOf( )方法还 ...
- valueOf()方法详解
valueOf方法返回指定对象的值 方法格式 object.valueOf() 返回值 返回该对象的原始值 方法描述 JavaScript 中的 valueOf() 方法用于返回指定对象的原始值,若对 ...
- JavaScript中的valueOf方法详解
Object.prototype.valueOf() valueOf() 方法返回指定对象的原始值. 语法 object.valueOf() 返回值 返回值为该对象的原始值. 描述 JavaScrip ...
- JS 中 valueOf() 方法的详解
JS 中 valueOf() 方法的详解 JavaScript 中的 valueOf() 方法用于返回指定对象的原始值,若对象没有原始值,则将返回对象本身.通常由JavaScript内部调用,而不是在 ...
- Integer对象范围(-128-127)之间(Integer. valueOf()方法)
1.Integer. valueOf()方法的作用 Integer. valueOf()可以将基本类型int转换为包装类型Integer,或者将String转换成Integer,String如果为Nu ...
- 重写enum的valueof方法等
2019独角兽企业重金招聘Python工程师标准>>> enum 对象的常用方法介绍 int compareTo(E o) 比较此枚举与指定对象的顺序. Cla ...
- 一眼毁三观:JS中令人发指的valueOf方法
剧透:文章末尾有两个小问题待解答,路过的兄弟请百忙之中抽空看下--- 彭老湿近期月报里提到了valueOf方法,兴致来了翻了下ECMA5里关于valueOf方法的介绍,如下: 15.2.4.4 Obj ...
- 关于Integer类中parseInt()和valueOf()方法的区别以及int和String类性的转换.以及String类valueOf()方法...
Integer类中的. 关于parseInt()方法的API文档. 返回的是int类型的 关于valueOf()方法的API文档 返回的是Integer类型的. 关于intValue()方法的API ...
最新文章
- Data - 深入浅出学统计 - 上篇
- vscode 这是一个好同志
- JavaScript的值传递和引用传递
- 【SQL】sql版Split函数。用于拆分字符串为单列表格
- 做大公司的螺丝钉 vs 当小公司的多面手
- devops 分支管理策略_DevOps招聘策略以吸引顶尖人才
- trycatch处理流IO流中的异常
- 全局角度出发讨论敏捷
- XML 处理利器 : XStream
- 正态分布里的西格玛_七大数据陷阱之油腻的统计学:正态分布来了
- python whl文件下载网址
- win7备份工具_调解 win7系统一键还原精灵使用的具体方法 -win7系统使用教程
- 实用的网页模板(一)
- 远程办公与人心、机制、工具
- 中学计算机课体育课被占用,那些年被占用的体育课
- 一个双向转换火星文的玩具
- Kubernetes:应用部署、应用了解、应用公布、应用伸缩,-image=ikubernetes/myapp:v1
- 可视化均衡插件-Acon Digital Equalize 2 v2.1.1 WiN-MAC
- AI Studio图形化任务说明
- Shell脚本实现MySQL主从自动化配置