Array

一 概念

#### 1、常见数组

```js
[1, 2, 3] | ['1', '2', '3'] | [1, '2', true]
```

#### 2、常用属性

```js
length:数组元素个数
```

#### 3、常用基础方法

```js
concat(arr):将目标数组拼接到指定数组之后
indexOf(ele):指定元素第一次出现的位置
lastIndexOf(ele):指定元素最一次出现的位置
reverse():反转数组
includes(ele, n):从索引n开始往后,元素ele是否在数组中,做全等匹配,索引从头开始n可以省略(in只做值匹配)
fill(ele):以指定元素填充整个数组(一般用于清空数组中的数据,不操作长度)
slice(n, m):从索引n开始,截取到索引m(m省略代表截取到最后)
join(str):以指定字符连接成字符串
```

#### 4、增删改方法

```js
push(ele):从尾加
unshift(ele):从头加

pop():从尾删
shift():从头删

splice(begin, length, ...eles):完成增删改
// begin开始索引
// length长度
// 新元素们(可以省略)

二 代码示范

<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<title>Array</title>
</head>
<body>

</body>
<script type="text/javascript">
// 数组的定义与取值,索引从0开始
var arr = [1, 2, 3];
console.log(arr);
console.log(arr[1]);

arr = ['1', '2', '3'];
console.log(arr);

arr = ["1", true, [{key: "value"}]]
console.log(arr);
console.log(arr[2][0].key);

// length
console.log(arr.length); // 3


// 常用方法
// concat(arr):将目标数组拼接到指定数组之后
console.log([1, 2, 3].concat(["4", "5", "6"])); // 结果是新数组

// indexOf(ele):指定元素第一次出现的位置
// lastIndexOf(ele):指定元素最一次出现的位置
console.log(arr.indexOf(true)); // 1

// reverse():反转数组
console.log(arr.reverse()); // 反转的到新数组

// includes(ele, n):从索引n开始往后,元素ele是否在数组中,做全等匹配,索引从头开始n可以省略(in只做值匹配)
arr = [1, "1", "2"];
console.log(1 in arr);
console.log(arr.includes(1, 1)); // 只匹配数字1,从索引1开始


// fill(ele):以指定元素填充整个数组
arr.fill(null);
console.log(arr); // 操作原数组,一般用来清空数组中的数据(不操作长度)

// slice(n, m):从索引n开始,截取到索引m(m省略代表截取到最后)
arr = [1, 2, 3, 4, 5];
console.log(arr.slice(1, 3)); // [1, 3)

// join(str):以指定字符串连接成字符串
var str = arr.join("@");
console.log(str);

// 增删改操作方法: 操作的都是原数组
// push() 尾加 | unshift() 头加
// pop() 尾删 | shift() 头删
arr.push(6)
console.log(arr);
arr.unshift(0);
console.log(arr);
// 一次操作一个元素
arr.pop();
arr.shift();
console.log(arr);

// splice方法
// begin开始索引
// length长度
// 新元素们(可以省略)

// 1, 2, 3, 4, 5
// 从头加
arr.splice(0, 0, 0); // 从索引0前方开始操作,操作原数组0个长度,结果多了个元素0
console.log(arr);
// 0, 1, 2, 3, 4, 5

// 从尾加
arr.splice(arr.length, 0, 6);
console.log(arr);
// 0, 1, 2, 3, 4, 5, 6

// 从头删
arr.splice(0, 1) // 从索引0开始,操作原数组一位,替换的新值省略代表删除
console.log(arr);
// 1, 2, 3, 4, 5, 6

// 从尾删
arr.splice(arr.length - 1, 1)
console.log(arr);
// 1, 2, 3, 4, 5

// 替换
arr.splice(2, 1, "3", [0, 0], "3"); // 从索引2开始,用"3", [0, 0], "3"替换掉1位
console.log(arr);

// 1, 2, "3", [0, 0], "3", 4, 5


</script>
</html>

 

posted @ 2018-10-17 17:47  不沉之月  阅读(116)  评论(0编辑  收藏  举报