跳到主要内容

包装对象

2023年02月10日
柏拉文
越努力,越幸运

JavaScript 自动装箱机制

JavaScript中,只有引用类型才有属性或者方法,基础数据类型理论上没有属性或者方法。StringNumberBoolean 作为基本数据类型,能够调用一些属性或者方法的原因是: JavaScript 自动装箱机制

为了方便操作基本数据类型, ECMAScript还提供了三个特殊的引用类型,基本包装类型,StringBooleanNumber。有了这三个类型,在需要的时候,原始类型会自动转换成相应的包装对象(这个过程叫自动装箱)。自动装箱就是临时创建一个包装对象,将原始类型的值封装起来,以便调用包装对象的函数。但是原来那个变量的值不会有任何变化!

以下是介绍手动装箱的方案

一、通过**Object()**创建包装对象

const wrappedNum = Object(1);
console.log(wrappedNum); // Number {1}

二、通过**new Number()**创建包装对象

const wrappedNum = new Number(1);
console.log(wrappedNum); // Number {1}