什么是包装类型?
在 JavaScript 中,基本类型是没有属性和方法的,但是为了便于操作基本类型的值,在调用基本类型的属性或方法时 JavaScript 会在后台隐式地将基本类型的值转换为对象,如:
const a = "abc" console.log(a.length);//3 console.log(a.toUpperCase());//ABC
str是一个String数据类型,它是基本数据类型并没有可以添加属性的功能,这时可以把它变成一个引用数据类型Object就可以添加新的属性。
console.log(new String(a)); console.log(Object(a));
两者打印的结果都为
然后他就有length和toUpperCase属性等等
我们也可以用valueOf方法将包装类型倒转成基本类型:
let a = "abc" let b = Object(a) let c = b.valueOf(b) console.log(c);//abc