JS / 包装类 String()Number()Boolean()

在JS中为我们提供了三个包装类,这三个包装类可以将基本数据类型的数据转换为对象

String()

        - 可以将基本数据类型字符串转换为String对象

Number()

        - 可以将基本数据类型的数值转换为Number对象

Boolean()

        - 可以将基本数据类型的布尔值转换为Boolean对象

var num = new Number(3)     //Number类型的对象

var bool1= new Boolean(true)

var bool2= new Boolean(true)

var bool3 = true

bool1 == bool2 为false 因为对象比较的是地址

bool1 == bool3 为true  因为自动类型转换了

bool1 === bool3 为false 

在实际应用中不会使用基本数据的对象,如果使用基本数据类型的对象,在做一些比较时可能会带来一些不可预期的结果

b为false对象 if语句仍运行

因为false是对象,对象转成布尔值都是true 

方法和属性只能添加给对象,不能添加给基本数据类型

当我们对一些基本数据类型的值去调用属性和方法时,浏览器会临时使用包装类将其转换为对象然后再调用对象的属性和方法,调用完以后再将其转换为基本数据类型

var s='sss'    //基本数据类型

s.hello='你好'  //添加属性不会报错,因为临时把s转换为String对象了 添加完属性又将对象销毁了

console.log(s.hello)  //输出 undefined

包装类的属性、方法都可以通过基本数据类型来调用,因为调用的时候会临时转换为对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值