update:数组的其他方法

This commit is contained in:
qianguyihao
2019-02-03 20:30:09 +08:00
parent be3cd9b7cf
commit d0841f9a94
4 changed files with 151 additions and 97 deletions

View File

@@ -93,44 +93,8 @@ ES6中的字符串扩展用得少而且逻辑相对简单。如下
Array.from(伪数组/可遍历的对象)
```
**作用**:将伪数组对象或可遍历对象转换为真数组。
**作用**:将**伪数组**或可遍历对象转换为**真数组**
**举例:**
```html
<body>
<button>按钮1</button>
<button>按钮2</button>
<button>按钮3</button>
<script>
let btnArray = document.getElementsByTagName('button');
console.log(btnArray);
console.log(btnArray[0]);
</script>
</body>
```
上面的布局中有三个button标签我们通过`getElementsByTagName`获取到的`btnArray`实际上是**伪数组**,并不是真实的数组:
![](http://img.smyhvae.com/20180402_1116.png)
既然`btnArray`是伪数组,它就不能使用数组的一般方法,否则会报错:
![](http://img.smyhvae.com/20180402_1121.png)
解决办法:采用`Array.from`方法将`btnArray`这个伪数组转换为真数组即可:
```javascript
Array.from(btnArray);
```
然后就可以使用数组的一般方法了:
![](http://img.smyhvae.com/20180402_1125.png)
### 扩展2Array.of()
@@ -140,15 +104,6 @@ ES6中的字符串扩展用得少而且逻辑相对简单。如下
**作用**:将一系列值转换成数组。
**举例**
```javascript
//Array.of(value1, value2, value3) : 将一系列值转换成数组
let arr = Array.of(1, 'abc', true);
console.log(arr);
```
### 扩展3find() 和 findIndex()
**方法1**
@@ -168,7 +123,6 @@ ES6中的字符串扩展用得少而且逻辑相对简单。如下
**作用**找出第一个满足「指定条件返回true」的元素的index。
## 对象的扩展
### 扩展1