资讯专栏INFORMATION COLUMN

浅谈javascript中的包装对象

lentrue / 547人阅读

摘要:中的对象类型分为内置类型和对象类型,其中内置类型包括五种对象类型包括等等,统称为类型。如下面代码为字符串添加一个属性并赋值为上面的代码我们可以分解为创建包装对象为字符串添加一个属性并赋值为释放包装对象自此我们不难理解为什么的值为

javascript中的对象类型分为内置类型和对象类型,其中内置类型包括sting number boolean null undefined五种;对象类型包括Array Function regExp Date 等等,统称为Object类型。我们知道在一个对象中包含一系列属性名/属性值的集合,可以通过"."来访问对象的属性或方法,如:

window.onload=function(){//可执行代码}

但我们常常可以看到这样的代码:

var str="hello world";
str.split(" ");            // ["hello","world"]

上段代码中,str为一个字符串,是存在栈中的一个值,并不属于对象,但是为什么str可以调用split方法呢?这就要用到包装对象的概念。当要操作字符串、数字、布尔值的属性时,js会在内存中自动创建一个对象,用来对内置类型进行包装,使内置类型暂时拥有普通对象功能,可以存取属性,一旦引用结束,包装对象自动销毁。如下面代码:

var str="123456";
str.a=7; //为字符串添加一个属性a,并赋值为7
console.log(str.a) //undefined

上面的代码我们可以分解为:

var str="123456";
var newStr=new String("str");//创建包装对象
newStr.a=7; //为字符串添加一个属性a,并赋值为7
console.log(newStr.a);//7
newStr=null;//释放包装对象
console.log(str.a) //undefined

自此我们不难理解为什么str.a的值为undefied;

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/89271.html

相关文章

  • 浅谈:快速理解JS的原型与原型链

    摘要:中有基本类型和复杂类型的区分。原型与原型链这里,就引入了两个新的概念。原型对象就是用来存放声明对象中共有的那部分属性。而原型对象自身也是一个对象,它也有自己的原型对象。这样层层上溯,就形成了一个类似链表的结构,这就是原型链。 JavaScript中有基本类型和复杂类型的区分。 当我们在声明一个基本类型时: var n1= 1; console.log(n1); //1 这时我们可以用N...

    ZoomQuiet 评论0 收藏0
  • 浅谈javascript里面的this、call、apply、bind

    摘要:如果该参数的值为或,则表示不需要传入任何参数,从开始可以使用类数组对象。当使用操作符调用绑定函数时,该参数无效。当绑定函数被调用时,这些参数将置于实参之前传递给被绑定的方法。 在了解call,apply之前需要先了解下javascrit中this指向 this的指向在ES5里面,this永远指向最后调用它的那个对象举个栗子: var name = outerName; function...

    Lemon_95 评论0 收藏0
  • 浅谈Redux(之一):Middleware原理

    摘要:作为目前最火的模式实现之一,它有很多的点值得研究。这个函数既然要用于,也就是说它接收一个形式为的函数,对其一层层嵌套形式为。这个会在开始时发起一个,并在这个时发起另一个成功或失败的。为了方便起见,会返回这个让调用者可以等待。 Redux作为目前最火的Flux模式实现之一,它有很多的点值得研究。今天我们首先来看看它的Middleware。 熟悉Express或者koa的朋友对Middle...

    cocopeak 评论0 收藏0
  • JavaScript深入浅出

    摘要:理解的函数基础要搞好深入浅出原型使用原型模型,虽然这经常被当作缺点提及,但是只要善于运用,其实基于原型的继承模型比传统的类继承还要强大。中文指南基本操作指南二继续熟悉的几对方法,包括,,。商业转载请联系作者获得授权,非商业转载请注明出处。 怎样使用 this 因为本人属于伪前端,因此文中只看懂了 8 成左右,希望能够给大家带来帮助....(据说是阿里的前端妹子写的) this 的值到底...

    blair 评论0 收藏0
  • 浅谈async·await

    摘要:在语言中,函数替换的不是表达式,而是多参数函数,将其替换成一个只接受回调函数作为参数的单参数函数。为什么里面必须使用函数呢,因为我们需要确保传入的值只有一个,利用其回调函数,来进行递归自动控制函数的流程,接收和交还程序的执行权 前言 这篇文章主要是梳理一下自己对阮一峰大神写的关于async/await文章,有写得不对的地方以及理解得不对的地方,各位大佬请指错! 对比 简单对比传统异步,...

    Magicer 评论0 收藏0

发表评论

0条评论

lentrue

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<