文档章节

JavaScript引用类型Object常见用法实例分析

p
 peakedness丶
发布于 11/21 21:22
字数 572
阅读 73
收藏 2

1、JavaScript数据类型

(1)基本类型

5种基本类型:Undefined、Null、Boolean、Number、String

(2)引用类型

5种引用类型:Object、Array、Date、RepExp、Function

(3)基本类型与引用类型的异同:

1.保存方式

基本类型是按值访问的。引用类型的值是按引用访问的,引用类型的值是保存在内存中的对象,JavaScript在操作对象时,实际上是操作对象的引用而不是实际的对象。

2.复制变量值

复制基本类型值会在变量对象上创建一个新值,然后把该值复制到为新变量分配的位置上。复制引用类型值也会将存储在变量对象的值复制一份到新变量的空间,只是值的副本是一个指针,指向存储在堆中的一个对象。

3.参数传递

JavaScript中访问变量有按值和引用两种方式,而参数只能按值传递。

2、Object类型

对象是某个引用类型的实例。

大多数引用类型值都是Object类型的实例。

---创建Object实例的方法

(1) 使用new操作符后跟Object构造函数。

var person = new Object();
person.name = "Alice";
person.age = 23;
person[5] = true;

(2) 使用字面量表示法。

var person = {
  "name" : "Alice",
  age : 23,
  5 : true
};

前端全栈学习交流圈:866109386 面向1-3经验年前端开发人员 帮助突破技术瓶颈,提升思维能力

当属性名是字符串时,引号(单、双引号)可用也可不用。

对象字面量是向函数传递大量可选参数的首选方式。

---访问对象属性的方法

(1) 点表示法

alert(person.name);

(2)方括号表示法

alert(person["name"];

方括号表示法的优点:可以通过变量来访问属性。

var property = "name";
alert(person[property];

若属性名中包含空格等或属性名是数值时,不能用点表示法,只能用方括号表示法。

alert(person[5]);

© 著作权归作者所有

共有 人打赏支持
p
粉丝 44
博文 123
码字总数 148338
作品 0
长沙
私信 提问
JavaScript instanceof 运算符深入剖析

随着 web 的发展,越来越多的产品功能都放在前端进行实现,增强用户体验。而前端开发的主要语言则是 JavaScript。学好 JavaScript 对开发前端应用已经越来越重要。在开发复杂产品中,需要使用...

IBMdW
2013/06/14
356
1
js中undefined,null,NaN的区别

1.类型分析: js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型。 var a1; var a2 = true; var a3 = 1; var a4 = "Hello"; var a5 = new Ob...

真座山雕
2012/12/11
0
1
【原创】数组完整篇 / 基本操作/ 进阶 / 遍历 / 实例 / 拓展 / 取 / 赋

【基础】数组基本操作 数组的常见基本操作分为:赋值,查长度,添加push,删除delete,遍历for-in等。简单数组是一维的,但是实际工作中,数组总是与对象结合使用,叫:数组对象。 类型操作分...

柴高八斗之父
2017/08/29
0
0
Javascript 中 null、NaN和undefined的区别

1.类型分析: js中的数据类型有undefined,boolean,number,string,object等5种,前4种为原始类型,第5种为引用类型。 代码: var a1; var a2 = true; var a3 = 1; var a4 = "Hello"; var a5 =...

文文1
2015/06/08
0
0
Node.js Interview ---- 类型判断

Node.js Interview ---- 类型判断 基本数据类型: Number,String,Boolean,Undefined,Null,Symbol 复杂数据类型: OBject console.log("aa" == true) // false const a = {i: 1,toString: funct......

Even
10/05
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Android :报错Your project path contains non-ASCII characters.

报错内容如下 Your project path contains non-ASCII characters. This will most likely cause the build to fail on Windows. Please move your project to a different directory. See ht......

lanyu96
7分钟前
0
0
[LintCode] Number of Islands(岛屿个数)

描述 给一个01矩阵,求不同的岛屿的个数。 0代表海,1代表岛,如果两个1相邻,那么这两个1属于同一个岛。我们只考虑上下左右为相邻。 样例 在矩阵: [ [1, 1, 0, 0, 0], [0, 1, 0, 0, ...

honeymose
8分钟前
0
0
Nginx平滑添加模块

Nginx已经编译安装并运行了一段时间, 然后某一天, 发现需要用到某个模块但当初没有编译, 这个时候怎么办呢? 卸载重新安装肯定可以的, 如果Nginx版本没有变更的话, 则有一个相对平滑的方法来添...

老菜鸟0217
12分钟前
1
0
spark安装测试

spark安装测试 由于本地已经安装好hadoop相关组件,所以本文是在yarn的基础上对spark进行安装及测试 确保hdfs及yarn成功启动,hadoop版本为2.7.3 安装scala,由于本人安装的spark是2.4.0,对应...

-九天-
26分钟前
3
0
周末看完了《电能计量自动化技术》

整体质量还行,下面分别将心得记录如下: 第一章:发展历程可以看看,现在算是智能电网阶段 2:讲主站系统。以文件进行各模块的交互很值得思考,尤其是批量数据,多团队合作的情况下。另外线...

max佩恩
46分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部