JS中对象的类型转换
2022/3/25 23:27:08
本文主要是介绍JS中对象的类型转换,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
对象类型转换时,会调用内置的[@@toPrimitive]函数。
1⃣️如果期望或得一个string或default,则[@@toPrimitive]会先调用toString。如果toString属性不存在,则会嗲用valueOf。如果也不存在则会抛出一个TypeError
2⃣️如果期望获得number类型,则[@@toPrimitive]会首先尝试valueOf,若失败再尝试toString
//自定义valueOf和toString方法 let a = { name:'小王', age:18, valueOf(){ return 18 }, toString(){ return `name is ${this.name}, age is ${this.age}` } }
也可以自己重写[Symbol.toPromitive]方法
//未重写版本 let a = { name:'小王', age:18, } console.log(a+'') //[object Object] //重写toPrimitive版本 let a = { name:'小王', age:18, [Symbol.toPrimitive](){ return `name is ${this.name}, age is ${this.age}` } } console.log(a+'') //name is 小王, age is 18
这篇关于JS中对象的类型转换的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16Vue3资料:新手入门必读教程
- 2024-11-16Vue3资料:新手入门全面指南
- 2024-11-16Vue资料:新手入门完全指南
- 2024-11-16Vue项目实战:新手入门指南
- 2024-11-16React Hooks之useEffect案例详解
- 2024-11-16useRef案例详解:React中的useRef使用教程
- 2024-11-16React Hooks之useState案例详解
- 2024-11-16Vue入门指南:从零开始搭建第一个Vue项目
- 2024-11-16Vue3学习:新手入门教程与实践指南
- 2024-11-16Vue3学习:从入门到初级实战教程