美文网首页
js中的toString,valueOf

js中的toString,valueOf

作者: skoll | 来源:发表于2022-06-21 14:20 被阅读0次

toString()

1 .返回对象的字符串表示,就是将其他东西用字符串表示
2 .对象


image.png

//返回[Object Object]
3 .数组


image.png
//返回join(",")
4 .数
image.png

5 .字符串


image.png

6 .布尔值


image.png

7 .函数


image.png

8 .作用:用来判断类型,是最精准的


image.png

valueOf

1 .返回对象的字符串,数值或布尔值表示.返回对象自身,返回对象的原始值

1 .当遇到需要预期的原始值的对象时,js会自动调用它
2 .默认情况下,valueOf由Object后面的每个对象继承.每个内置的核心对象都会覆盖此方法以返回适当的值.如果对象没有原始值,则valueOf将返回都西昂本身
3 .Math和error没有这个方法
4 .创建自定义对象时,可以覆盖Object.prototype.valueOf来调用自定义方法,而不是默认的Object方法.如果自己定义了新的方法,下次每次需要调用这个方法的时候,就会使用自己定义的方法

2 .对象


image.png

3 .数组


image.png

4 .数


image.png

5 .字符串


image.png

6 .布尔值


image.png

7 .函数


image.png

8 .Date 返回毫秒形式的时间戳
9 .toString()当需要将对象显示为文本(如在 HTML 中)或需要将对象用作字符串时,JavaScript 在内部使用该方法

使用说明

1 .实操作符单独对对象进行转换的时候,都是先调用 valueOf,如果valueOf 返回的不是基本类型,会再调用 toString
2 .之前看的文章说的是,当需要变成字符串的时候,调用toString,当需要变成数字的时候,调用valueOf,再进行隐式转换的时候
3 .在使用对象参与运算的时候就会调用这个方法|(+-*/==><)时被调用(隐式转换)|
4 .看了文章,感觉说法都不一样,还是看官方文档吧,不过他们说的问题还是确实存在的那就是valueOf和toString哪个优先级高,使用的场景分别是什么?
5 .文档里面都明确说了,你是不会主动在js代码里面用这个函数的.

那就是要搞清除这个东西.js的隐式转换-自动调用的时候

1 .再一次决定需要学习ts .因为没有必要,ts 首先完全兼容 js,隐式类型转化的结果是可以预知的,当你把字符串与数字相加赋值给一个变量时,这个变量的类型也是预知的,并且如果你把结果赋值给一个非字符串型变量时,编译器就会报错,如此便可以保证隐式类型转化依旧能够保持类型安全性,也就没有必要设计显式转化了
2 .当使用操作符的时候,如果有对象,就会走这个逻辑

toLocalString()

相关文章

网友评论

      本文标题:js中的toString,valueOf

      本文链接:https://www.haomeiwen.com/subject/qqfhvrtx.html