深入理解JavaScript数组Array类型

0 下载量 176 浏览量 更新于2024-09-01 收藏 85KB PDF 举报
参数被视为数组的长度,而不是元素 vara = new Array(5); // 创建长度为5的空数组 这将创建一个含有5个空位的数组,而不是包含5个undefined的数组。尝试访问这些空位会返回undefined。 【3】有一个或多个元素参数,这些参数将作为数组的初始元素 vara = new Array('apple', 'banana', 'cherry'); // 创建包含3个字符串的数组 如果只有一个数值参数,但该参数是数字,那么Array构造函数会将其视为长度,而不是元素。例如,`new Array(3)`与`new Array('a', 'b', 'c')`的结果不同,前者创建一个空数组,后者创建一个包含三个字符串的数组。 数组方法 JavaScript的Array对象提供了一系列方法来操作数组,包括但不限于: - `push()`:在数组末尾添加一个或多个元素,并返回新的长度。 - `pop()`:移除并返回数组的最后一个元素。 - `shift()`:移除并返回数组的第一个元素。 - `unshift()`:在数组开头添加一个或多个元素,并返回新的长度。 - `slice()`:返回一个新的数组,包含从开始到结束(不包括结束)的数组的一部分浅拷贝。 - `splice()`:添加/删除项目,然后返回被删除的项目。 - `concat()`:连接两个或更多数组,并返回结果。 - `join()`:将数组的所有元素放入一个字符串。默认用逗号分隔。 - `indexOf()`:返回指定元素在数组中第一次出现的位置,如果不存在则返回-1。 - `lastIndexOf()`:返回指定元素在数组中最后一次出现的位置,如果不存在则返回-1。 - `forEach()`:对数组的每个元素执行一次提供的函数。 - `map()`:创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后的返回值。 - `filter()`:创建一个新数组,其中包含通过所提供函数实现的测试的所有元素。 - `reduce()`:对数组中的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为单个返回值。 数组属性 JavaScript数组还有一些特殊的属性,比如: - `length`:返回数组的元素数量。 - `toString()`:返回数组元素的字符串形式,元素之间用逗号分隔。 - `valueOf()`:返回数组本身。 此外,JavaScript还提供了`Array.from()`和`Array.of()`方法,用于从类数组对象或可迭代对象创建一个新的数组实例。 JavaScript的数组类型具有灵活性,可以存储不同类型的值,并且提供了丰富的操作方法。然而,这种灵活性也可能导致一些陷阱,比如,使用索引为负数或者大于length的索引时,不会抛出错误,而是返回undefined。因此,在处理JavaScript数组时,开发者需要注意这些特性,以避免潜在的问题。