JavaScript 基础数据类型的点操作原理与包装对象

基础类型的点操作原理
var a = "hello";
console.log( a.charAt(1) );//e
console.dir( a ); //hello, a只是一个基础数据类型

//undefined null除外的基础类型在执行 . 操作的时候,真正操作的不是这个基础数据类型,而是它所对应的包装对象
//a.charAt(1) ===> new String(a).charAt(1)

//undefined null类型的无论如何都不能点操作
基础数据类型不能存值,复杂数据类型才能存值
var a = "hello";
a.x = 10;
console.log( a.x );//undefined

/*
a.x ===> new String(a).x = 10  
	产生一个包装对象a,并添加属性x = 10
	new String(a)确实存了10,但当这步执行完这个包装对象就被销毁了


console.log( a.x );
	new String(a).x 
	当前的包装对象new String(a)是新产生的,没有x的值,所以是undefined
*/
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值