js高级教程阅读笔记 第五章-引用类型(上)

本章核心

  • 使用对象
  • 创建并操作数组
  • 理解基本的js类;`
  • `型
  • 使用基本类型和基本包装类型

引用类型在其他语言中可以被理解为类,但是js中没有类这个概念。当然,你也可以理解引用对象为对象的定义,因为它描述了属性和方法

使用对象

对象是某个引用类型的实例,它的申明方式和java相同。
var person = new Object();
object类型是所有引用类型的父类。
两种创建object类的方法:
var person = new Object();
person.name = 'zhang';
person.age = 11;

另一种是字面量的方式:

var person = {
//使用,来分割不同的属性
    name : 'zhang',
    age : 11
}

ps:在很多语言中,访问对象属性可以使用点操作符,在js里除了这样的方式,还可以使用[ ],比如说:

person["name"];

这样的好处是我们可以使用变量来访问属性,并且属性可以是非连续的,比如:first name(因为中间有空格所以不能用点操作符来直接访问)。
但是除非是非要用变量,建议还是使用点操作符。

array类型

js的数组不仅是动态的,而且与其他语言不同,它是任意的,意思就是,数组的每一项可以使任意的数据类型,比如第一项是数字,第二项可以使字符串。

创建语法:

//可以省略new操作符
var array = new Array(); 
var array1 = new Array(20); // 参数代表数组长度
var array2 = new Array('red','blue','black');//参数代表数组内容

第二种方式:

var array = [1,2,];//这样的书写结果是1,2,undefined

数组的项数保存在length属性中

关于length的动态性:

var color = ['red','blue','black'];
color.length = 2;
alert(color[2]);
输出的结果自然是undefined。

ps:数组的长度是有限的,但是已经其大小完完全全满足任何编程所需了。

检测数组

使用instaof检测是否是数组。
isArray用于在多个全局环境中,最终检测是否是数组。

在数组中调用toString和valueOf的结果是一样的,这是因为数组就是字符串用逗号隔开而拼接而成的:

var color = ['red','blue','black'];
alert(color.toString()); //return red blue black
alert(color.valueOf()); //return red blue black
alert(color); //return red blue black
原文地址:https://www.cnblogs.com/comefuture/p/8305959.html