Array数组中常见的属性与方法

130 阅读2分钟

数组中常见的属性与方法

1. 创建数组

`可以使用 new 关键字来创建一个数组`
let arr = new Array()

`也可以直接通过数组字面量的形式来创建数组`
let fruits = ['Apple', 'Banana', 521, true];

`通过array的length属性可以获得数组中的元素个数,且总是大于数组最高项的下标。`
console.log(fruits.length);  // 4

2. 通过索引访问数组元素

注: 索引从0开始

let fruits = ['Apple','Banana'];  
console.log(fruits.length);  // 2`
// 2. 通过索引访问数组元素
let first = fruits[0];  // Apple
let last = fruits[fruits.length - 1];  // Banana

`通过 [下标] 且下标小于数组长度否则会返回undefined`
let first = fruits[0];  // Apple
console.log(fruits[5]); // undefined
let last = fruits[fruits.length - 1];  // Banana

3. 删除数组末尾的元素

通过 .pop()方法 此方法改变原数组

let fruits = ['Apple','Banana','Orange'];
let last = fruits.pop();  // 删除了 Orange
// last 输出 'Orange'
// fruits 输出 ['Apple','Banana']

4. 删除数组头部元素

通过 .shiift() 方法 此方法改变原数组

let fruits = ['Apple','Banana','Orange'];
let first = first.shift();   // 删除了 Apple
// last 输出 'Apple'
// fruits 输出 ['Banana', 'Orange']

5. 添加元素到数组的头部

通过 .unshiift() 方法 此方法改变原数组 且此方法返回的并不是添加的元素而是数组的长度

let fruits = ['Apple','Banana','Orange'];
let newLength = fruits.unshift('Strawberry');   // 添加了 Strawberry
// newLength 输出 4
// fruits 输出 ['Banana', 'Orange']

6. 找出某个元素在数组中的索引

通过 .indexOf(a,b) 方法 ,如果不存在,则返回 -1。

接收两个参数 a要查找的元素b开始查找的位置

let fruits = ['Apple','Banana','Orange','Apple'];
fruits.push('Mango');
console.log(fruits);
fruits.indexOf('Apple');  // 输出 0

fruits.indexOf('Apple',1);  // 输出 3

fruits.indexOf('apple');  // 输出 -1

7. 合并两个或多个数组

通过 .concat(values) 方法 此方法不会更改现有数组,而是返回一个新数组

let arrOne = ['Apple','Banana','Orange','Apple'];
let arrTwo = [1,2,3];
let arrCon = arrOne.concat(arrTwo);
console.log(arrCon);
// ['Apple', 'Banana', 'Orange', 'Apple', 1, 2, 3]

8.返回索引对应的元素

通过 .at() 方法

接收一个整数并返回该索引对应的元素,允许正数和负数。

负整数从数组中的最后一个元素开始倒数。 如果不存在返回 undefined

const array1 = [5, 12, 8, 130, 44];
array1.at(-2);  // 130
array1.at(-1);  // 44
array1.at(0);  // 5```
------------------------------------------
在非数组对象上调用 at()
需要通过原型来调用at方法并使用call来指定this

const arrayLike = {
  length: 2,
  0: "a",
  1: "b",
};
console.log(Array.prototype.at.call(arrayLike, -1)); // "b"

本文编写了数组中我们常用到的、常见的属性与方法, 删除元素增加元素等

本人第一次写文章可能不够完善 还有不足之处请大家多多指教。