日期:2014-05-16 浏览次数:20441 次
一、基本数据类型的包装对象
?
三个关健的基本数据类型都有包装类型:数字、字符串和布尔值对应的包装类型分别是 Number 、String、Boolean。
?
JavaScript可以很灵活的在基本类型和他们的包装类型中进行转换。例如当在对象环境中使用string时,JavaScript会自动生成一个瞬间String对象,以支持对String对象的属性和方法进行访问:
?
var s = "These are the times that try people's souls"; var last_word = s.substring(s.lastIndexOf(" ")+1, s.lenght);
?
对于普通字符串,typeof返回的值为"string",而对象的typeof返回的值为"object"。
?
要注意的是这种转换中JavaScript内部自动完成的,并且转换后的对象是瞬间存在的,在完成操作后就消失了,而转换前的对象不会因此受影响。
?
如果想保留包装对象,则需要显式的创建一个新的对象:
var s = "hello world"; var s_wrapper = new String("hello world");
?
同里,当一个包装对象用在一个普通的应用场景,则会自动的转成非包装对象计算:
?
var msg = s_wrapper + "!";
?
二、对象到基本类型的转换
?
大多数转换依赖上下文环境,例如+运算符和比较运行符(<,<=,>和>=)即对数字有效也对字符串有效。