博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
理解对象(通过关联数组和基本包装类型)
阅读量:5846 次
发布时间:2019-06-19

本文共 786 字,大约阅读时间需要 2 分钟。

hot3.png

在javascript中,所有变量实际上都是某种类型的对象。(除了null和undefinde)

通过关联数组理解对象

在为数组元素给出下标时,不必局限于使用数字,也可以使用字符串:

var lennon = Array();lennon["name"] = "John";lennon["year"] = 1940;lennon["living"] = false;

这样的数组叫做关联数组。本质上,在创建关联数组时,你创建的是Array对象的属性。在上面的例子中,实际上为lennon数组添加了“name”“year”“living”三个属性。

通过基本包装类型理解对象

为了便于操作基本类型值,ECMAScript提供了3个特殊的引用类型:Boolean、Number和String。每当读取一个基本类型值的时候,后台都会创建一个对应的基本包装类型的对象。对于下面的例子:

var s1 = "some text";var s2 = s1.substring(2);    //这个变量像对象一样有方法!

在读取字符串s1时,后台会自动完成以下处理:

  1. 创建String类型的一个实例;

  2. 在实例上调用指定的方法;

  3. 销毁这个实例。

可以将以上三个步骤想象成执行了以下代码:

var s1 = new String("some text");var s2 = s1.substring(2);s1 = null;

引用类型类型与基本包装类型的主要区别就是对象的生存期。使用new操作符创建的引用类型的实例,在执行流离开之前作用域都一直保存在内存中。而自动创建的基本包装类型的对象,则只存在于一行代码的执行瞬间,然后立即被销毁。这意味着我们不能在运行时为基本类型值添加属性和方法。

转载于:https://my.oschina.net/hiYoHoo/blog/399239

你可能感兴趣的文章
复习昨天的,继续过Hard题目
查看>>
最常见的显示设置和快捷键
查看>>
u-boot 2016.05 添加u-boot cmd
查看>>
【Python】正则表达式re
查看>>
交叉熵(Cross-Entropy) [转载]
查看>>
美国报税
查看>>
《廖雪峰 . Git 教程》学习总结
查看>>
可视化的数据结构和算法
查看>>
JAVA中替换字符的方法replace和replaceAll 区别
查看>>
Kafka~服务端几个常用的命令
查看>>
R语言使用tryCatch进行简单的错误处理
查看>>
windows7系统下升级到IE11时无法使用F12开发人员工具的解决办法
查看>>
在javascript中获取一个对象内属性的个数
查看>>
中文分词工具探析(一):ICTCLAS (NLPIR)
查看>>
ServerSocket和Socket
查看>>
css 样式使用方法的累积
查看>>
DigCSDN介绍首页
查看>>
23种设计模式用英语怎样表达?
查看>>
3. CONFIGURATION官网剖析(博主推荐)
查看>>
Linux学习——自定义shell终端提示符
查看>>