valueOf()函数,可以获取封装对象中的基本类型值:
valueOf() 方法返回指定对象的原始值。MDN
var a = new String( "abc" );var b = new Number( 42 );var c = new Boolean( true );a.valueOf(); // "abc"b.valueOf(); // 42c.valueOf(); // true
| 对象 | 返回值 |
|---|---|
| Array | 返回数组对象本身。 |
| Boolean | 布尔值。 |
| Date | 存储的时间是从 1970 年 1 月 1 日午夜开始计的毫秒数 UTC。 |
| Function | 函数本身。 |
| Number | 数字值。 |
| Object | 对象本身。这是默认情况。 |
| String | 字符串值。 |
| Math 和 Error 对象没有 valueOf 方法。 |
在需要用到封装对象中的基本类型值的地方会发生隐式拆封。
var a = new String( "abc" );var b = a + ""; // b的值为"abc"typeof a; // "object"typeof b; // "string"
