javascript中的类型转换
Posted 低代码布道师
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript中的类型转换相关的知识,希望对你有一定的参考价值。
javascript中有基本类型和复杂类型,对象就是一种复杂类型,如果对对象做加法、减法、输出会发生什么事情呢?
会进行类型转换,比如使用alert语句输出对象
alert(obj);
会先将对象转换为字符串,然后再输出
如果对对象做算术运算或者比较运算,那么会将对象转换为数值
// explicit conversion
let num = Number(obj);
// maths (except binary plus)
let n = +obj; // unary plus
let delta = date1 - date2;
// less/greater comparison
let greater = user1 > user2;
可以调用的转换api
obj.toString()
obj.valueOf()
对象可以自己实现上述类型转换的方法
let user = {
name: "John",
money: 1000,
// for hint="string"
toString() {
return `{name: "${this.name}"}`;
},
// for hint="number" or "default"
valueOf() {
return this.money;
}
};
alert(user); // toString -> {name: "John"}
alert(+user); // valueOf -> 1000
alert(user + 500); // valueOf -> 1500
以上是关于javascript中的类型转换的主要内容,如果未能解决你的问题,请参考以下文章