字符串的转化规则?


字符串

转化成字符串类型的方式

1.toString()方法

例如

var age = 11;
console.log(age.toString());//"11"
var found = true;
console.log(found.toString());//"true"

2.String()函数

例如

var age = 11;
console.log(String(age));//"11"
var found = true;
console.log(String(found));//"true"

3.利用+“”

例如

var age = 11;
console.log("" + age);//"11"
var found = true;
console.log("" + found);//"true"

其它值到字符串的转化规则

1.null和 undefined类型

null和 undefined类型 ,null 转换为 “null”,undefined 转换为 “undefined”,

var age = null;
console.log(String(age));//"null"
var found = undefined;
console.log(String(found));//"undefined"

注意如果null和undefined用toString()方法则会出现报错 TypeError

var age = null;
console.log(age.toString());//"TypeError"
var found = undefined;
console.log(found.toString());//"TypeError"

2.Boolean类型

Boolean 类型,true 转换为 “true”,false 转换为 “false”。

var age = true;
console.log(age.toString());//"true"
var found = false;
console.log(found.toString());//"false"

3.Number 类型

Number 类型的值直接转换,不过那些极小和极大的数字会使用指数形式。

var age = 15458478485645646848646468486468456454444444444444444446846;
console.log(age.toString());//"1.5458478485645647e+58"
var found = 12;
console.log(found.toString());//"12"

4.Symbol 类型

Symbol 类型的值直接转换,但是只允许显式强制类型转换,使用隐式强制类型转换会产生错误。

let name =Symbol("钢铁侠");
console.log(name.toString());//Symbol(钢铁侠)
let name =Symbol("钢铁侠");
console.log(""+name);//TypeError

5.对对象来说

对普通对象来说,除非自行定义 toString() 方法,否则会调用
toString()(Object.prototype.toString())来返回内部属性 [[Class]] 的值,如"[object
Object]"。如果对象有自己的 toString() 方法,字符串化时就会调用该方法并使用其返回值。

扫描二维码关注公众号,回复: 14741719 查看本文章

猜你喜欢

转载自blog.csdn.net/zhaojiaxing123/article/details/129362071