为了便于操作基本类型值,ECMAScript 提供了 3 个特殊的引用类型:Boolean、Number和 String。这些类型与其他引用类型相似,但同时也具有与各自的基本类型相应的特殊行为。实际上,每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,从而能够调用一些方法来操作这些数据。
一.基本包装类型概述
<code>var</code> <code>box =</code><code>'Mr. Lee'</code><code>;</code><code>//定义一个字符串</code>
<code>var</code> <code>box2 = box.substring(2);</code><code>//截掉字符串前两位</code>
<code>alert(box2);</code><code>//输出新字符串</code>
变量 box 是一个字符串类型,而 box.substring(2)又说明它是一个对象(PS:只有对象才会调用方法),最后把处理结果赋值给 box2。'Mr. Lee'是一个字符串类型的值,按道理它不应该是对象,不应该会有自己的方法,比如:
alert('Mr. Lee'.substring(2));//直接通过值来调用方法
1.字面量写法:
<code>var</code> <code>box =</code><code>'Mr. Lee'</code><code>;</code><code>//字面量</code>
<code>box.name =</code><code>'Lee'</code><code>;</code><code>//无效属性</code>
<code>box.age =</code><code>function</code> <code>() {</code><code>//无效方法</code>
<code>return</code> <code>100;</code>
<code>};</code>
<code>alert(box);</code><code>//Mr. Lee</code>
<code>alert(box.substring(2));</code><code>//. Lee</code>
<code>alert(</code><code>typeof</code> <code>box);</code><code>//string</code>
<code>alert(box.name);</code><code>//undefined</code>
<code>alert(box.age());</code><code>//错误</code>
2.new 运算符写法:
<code>var</code> <code>box =</code><code>new</code> <code>String(</code><code>'Mr. Lee'</code><code>);</code><code>//new 运算符</code>
<code>box.name =</code><code>'Lee'</code><code>;</code><code>//有效属性</code>
<code>box.age =</code><code>function</code> <code>() {</code><code>//有效方法</code>
<code>alert(</code><code>typeof</code> <code>box);</code><code>//object</code>
<code>alert(box.name);</code><code>//Lee</code>
<code>alert(box.age());</code><code>//100</code>
以上字面量声明和 new 运算符声明很好的展示了他们之间的区别。但有一定还是可以肯定的,那就是不管字面量形式还是 new 运算符形式,都可以使用它的内置方法。并且Boolean 和 Number 特性与 String 相同,三种类型可以成为基本包装类型。
PS:在使用 new 运算符创建以上三种类型的对象时,可以给自己添加属性和方法,但我们建议不要这样使用,因为这样会导致根本分不清到底是基本类型值还是引用类型值。
二.Boolean 类型
Boolean 类型没有特定的属性或者方法。
三.Number 类型
Number 类型有一些静态属性(直接通过 Number 调用的属性,而无须 new 运算符)和方法。
Number 静态属性
Number 对象的方法
转载至:http://www.jb51.net/article/63875.htm
<a href="http://down.51cto.com/data/2368286" target="_blank">附件:http://down.51cto.com/data/2368286</a>
本文转自 风雨萧条 博客,原文链接: http://blog.51cto.com/1095221645/1864829 如需转载请自行联系原作者
<a href="http://blog.51cto.com/search/result?q=%E5%9F%BA%E6%9C%AC%E5%8C%85%E8%A3%85%E7%B1%BB%E5%9E%8B" target="_blank">基本包装类型</a>