JavaScript基本包装类型(自动装箱和自动拆箱)(instanceof方法)

1)为了便于操作基本类型值,ECMAScript提供了3个特殊的引用类Boolean, Number, String每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型对象,从而可以使我们调用一些方法操作这些数据。

在创建变量s后(var s = "briup";)
后台进行自动装箱操作(var s = new String(briup);) 
在变量s调用String对象的方法操作后,后台自动拆箱,变成String基本数据类型
s.substring(2);
console.log(typeof s);//基本数据类型内的String

综上:

后台会自动完成以下操作:
a.创建String类型的一个实例(var s = new String("briup");)
b.在实例上调用指定的方法(s.substring(2);)
c.销毁这个实例

2)基本包装类型的实例调用typeof返回”object”,从而所有基本包装类型对象都会被转换为布尔类型的true.

Object构造函数会像工厂方法一些,根据传入的值的类型返回相应基本包装类型的实例
var obj = new Object("briup");//object类型 类型为String包装类型
console.log(obj);//返回的是String类型的对象
console.log(obj instanceof String);//返回的是true
使用new调用基本包装类型的构造函数,与直接调用同名的转换函数不一样      
var s = "11";
var s1 = Number(s); //转型函数 number类型
var s2 = new Number(s); //构造函数 object类型

3)instanceof方法:检测引用类型

检测某个对象或实例是不是属于某个类型或函数
返回值:true或者false
例:
var arr=[1,2,3];
console.log(arr instanceof Array);//true
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值