在Javascript中,字符串,数字,和布尔都是原始的基本类型,即字符串、数字和布尔值不以对象的形式存在的。然而,由于这三种原始值需要操作,Javascript会自动将这三种类型的值,使它们拥有的属性和方法作为对象,字符串的情况下,封装过程如下:



1、当Javascript遇到属性访问或方法调用字符串值时,它调用新的字符串(字符串值)来自动将字符串封装到字符串对象中。

2.javascript将访问新创建的对象的属性或方法,并返回相应的结果。

后3。属性访问或方法调用结束,Javascript将立即销毁新创建的对象。



以下面的代码为例,Javascript创建的字符串对象的属性写操作毫无意义,因为创建的对象在语句结束后不再存在。



复制代码代码如下所示:

var;

s.length = 9;

console.log(s.length) / / 4;

s.newvariable = 9;

console.log(s.newvariable); / /未定义

console.log(S =测试); / /真的





值得注意的是,上述代码中的变量始终是一个字符串的原始,和由Javascript字符串对象中存在的s.length或s.newvariable执行操作的过程。这可以在上述实验验证的最后一行。



除了对原始值进行自动封装外,开发人员还可以手动选择相应的过程,不像自动包装那样,对象不会被手工封装立即销毁,因此编写手动封装对象的属性是很有意义的。



复制代码代码如下所示:

var =新字符串(测试);

t.length = 9;

console.log(t.length / /);4,长度属性是只读的

t.newvariable = 9;

console.log(t.newvariable); / / 9

console.log(T = =测试); / /真的

console.log(T =测试); / /假