文章目录
在JavaScript中,对象可以分为以下几种类型:
内置对象:这些对象是由JavaScript引擎提供的,如Object、Array、String、Date、RegExp等。
宿主对象:这些对象是由宿主环境(浏览器、Node.js等)提供的,在不同的环境下可能有所不同,如window、document、XMLHttpRequest等。
自定义对象:这些对象是由程序员自己创建的,使用构造函数或字面量语法创建,可以根据需求自定义属性和方法。
原生对象:也称封装对象,是内置对象的包装器,提供了一些额外的功能,如Number、String、Boolean、Function、Array、RegExp等,主要作用是方便使用原始值时调用对象的方法。
对象实例:也称对象,是通过构造函数创建的对象实例,每个实例都有自己的属性和方法
在我们的实际开发当中,我们使用的大部分还是内置对象和宿主对象。自定义对象使用的很少
数组也是一个对象,属于内置对象。其中使用索引,数组的存储性能比我们的对象性能要好,在我们开发中我们使用数组来存储一些对象。
- var arr = new Array();
- console.log(typeof arr); //object
arr[1] = 10;
var a = arr[2];
如果读取不存在的索引,就会得到undefined
这是一个属性,也就是元素的个数。当然,元素个数得是连续的数据,也就是索引中间不能有空值。
console.log(arr.length);
通过arr.length()会删除多余元素或者添加空元素。慎用!
- var arr = new Array();
- arr[0] =123;
- arr.hello = "abc";
数组也是对象,我们可以往上添加属性,但是没有任何意义。
var obj = [1,2,3,4];
使用构造函数创建数组时,可以直接往里边添加元素。将要添加的元素作为构造函数的参数传递。元素之间采用逗号分割。
var obj = (10,20,30);
- arr = [10];
- console.log(arr[0]);
这是一个另类写法,创建了一个数组,往数组中添加元素10。
arr2 = new Array(10);
这么写的含义是创建了一个长度为10的数组。 只不过这么写没有意义。JS中的数组可以随意添加和删减。
var arr = ["hello",1,,null,true,undefined];
数组中可以存放任何值。 甚至可以是函数。
定义一个数组:
var arr = ["孙悟空","猪八戒","沙和尚"];
向入组末尾添加一个或者更多的元素,并返回最新的长度。
- var arr = [];
- var length = arr.push("1","2","3");
- console.log(length);
删除数组的最后的一个元素。
向数组开头添加一个或者多个元素,返回新的数组长度。
删除数组开头第一个元素,并将删除的元素进行返回。
- for(var i = 0;i
length;i++){ - console.log(arr[i]);
- }
- var arr = ["1",2,3,4,5];
- arr.forEach(function fun(a){
- console.log(a)
- });
-
- //这种函数,由我们创建,但是不是我们调用被称为回调函数。
数组中有几个元素就会执行几次,再次执行时,浏览器会将遍历到的元素传递到回调函数参数中。 我们可以通过定义形参读取相关内容。
浏览器会往回调参数中传递三个参数,第一个是元素对象,第二个是索引。第三个是数组本身。