欢迎光临散文网 会员登陆 & 注册

包装类:

2021-05-29 20:58 作者:刂C刂C刂  | 我要投稿

JavaScript 的数据类型分两种:

  1. 基本数据类型:数字类型、字符串、布尔、null、undefined、Symbol。

  2. 引用数据类型:数组、对象、Set、Map。

  3. 基本数据类型存储的是原始值本身,而引用数据类型存储的值的引用

概念:在 JavaScript 中,提供了三种特殊的引用类型构造函数:Boolean、Number、String。每当我们调用与之相关的基本类型数据时,JavaScript的后台都会调用它们来创建一个对应的对象,从而能够调用一些方法来操作这些数据,这就是包装类。

以下代码为列:

var a = 'abc';

console.log( a.length);   // 输出结构为3


// 在调用 a.length 时,JavaScript引擎实质上进行了类似于以下面这样的操作:

// 1. var a1 = new String(abc);     => 临时创建了一个相对于 变量a 值 的对象。

// 2. ( a.length )的值 = a1.length;     => 调用这个临时对象的方法。

// 3. a1 = null;    => 销毁这个临时对象。



注意!虽然基本类型能使用 包装类 的一些方法,但是创建的临时对象,在方法调用完后就会被立刻销毁。所以前往不要将基本类型当成对象,。

var str = 'Hello';

str.myObj = 'World';

console.log( str.myObj); // undefined

// str 是基本类型,不是对象,故而不能添加自定义属性。


var str1 = String('Hello');

str1.myObj = 'World';

console.log(str.myObj); // undefined

console.log(str === str1); // true

// 由此可知,通过函数调用方式创建的是基本类型数据


var str2 = new String(Hello);

str2.myObj = 'World';

console.log( str2.myObj ); // World

// str2 是new 出来的,是对象,所以是可以添加自定义属性的。


包装类:的评论 (共 条)

分享到微博请遵守国家法律