JavaScript零零碎碎的知识点

正在啃《JavaScript权威指南》,随手记一些重要的东西。

3.6 包装对象

var s = "test";
s.len = 4;     //给s设置一个属性
var t = s.len; //查询这个属性

t返回的结果是undefined。原因在于,执行第二行代码时创建了一个临时字符串对象,s.len属性的设置是在其上的,这行代码执行完毕后临时对象就销毁,原来的s没有变,自然也无法查到s.len这个属性。

//原始值和包装对象的差异
var n = 2;
var N = new Number(n);
typeof(n);
typeof(N);
n == N;
n === N;

3.7 不可变的原始值和可变的对象引用

var s = "hello";
s.toUpperCase();//返回一个新的字符串"HELLO",但没有改变s的值
s

原始值的比较是值的比较,对象的比较是引用的比较。
两个对象就算包含同样的属性和相同的值,仍然不相等。

3.8 类型转换

[2]+1;
[9] == 9;
[] == 1;
5 == true;//这行代码的结果让我有点意外
1 == true;
Boolean(5);
Object(3);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值