js的包装对象

包装对象 : 基本类型都有自己对应的包装对象 : String  Number  Boolean 。

例如

var str = 'hello';

str.charAt(0);这里用的就是sting类型的包装对象String下面的方法。当执行这一句话的时候,基本类型会找到对应的包装对象类型,然后包装对象把所有的属性和方法给了基本类型,然后包装对象消失。看下面这道题

var str = 'hello';

str.number = 10;

alert( str.number ); //undefined

这里结果是undefined。执行第一句话的时候,str是一个基本类型,执行第二句话的时候,str是包装对象的一个对象,并且给它添加了一个属性number,然后就消失了。

执行到第三句话的时候,str是另一个包装对象的对象,没有number属性,所以结果是undefined。

正确的做法应该是

var str = 'hello';

String.prototype.number = 10;

alert( str.number );

原文地址:https://www.cnblogs.com/toodeep/p/4472577.html