课程
/前端开发
/JavaScript
/JavaScript深入浅出
没看懂!!!!
为什么基本类型不是没有属性吗
如果 var str = "" 是不是也是新建一个变量类型为字符串的意思?
2016-07-22
源自:JavaScript深入浅出 1-4
正在回答
刚发现漏了一问没回答,补充一下,var str="",""表示空字符串,这一句的意思就是声明一个值为空的字符串类型变量str。
基本类型是没有属性的,但是在对string/number/boolean进行访问和设置属性这样的操作时,js会将其临时转换为对应的包装对象类型String/Number/Boolean,这样就可以访问或设置属性了,正如视频说的例子:
var a = "string"; //基础类型
alert(a.length); //6,访问length属性时a被转换为包装对象类型
a.t = 3;//添加t属性,这时a被转换为包装对象类型
alert(a.t); //undefined,由于上面的操作已完成,临时对象被销毁,a是基础类型,没有属性
可以这么理解,基本类型string有对应的包装对象String,就可以使用包装对象的属性和方法。
举报
由浅入深学习JS语言特性,且解析JS常见误区,从入门到掌握
3 回答没看懂执行顺序
2 回答bar.call(7)这个没看懂
1 回答var str="string" 没看懂
2 回答arguments没有听懂。。。。。
3 回答看不懂写的是啥