数组扩展
Array.from : 将伪数组对象或者可遍历的对象 转换成真数组
Array.of : 将一系列的值转换为数组
find : 找出第一个满足条件的元素
findIndex : 找出第一个满足条件元素的索引
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<button>按钮1</button>
<button>按钮2</button>
<button>按钮3</button>
<button>按钮4</button>
<button>按钮5</button>
<button>按钮6</button>
<button>按钮7</button>
<button>按钮8</button>
</body>
</html>
<script>
// 数组的扩展
// of : 将一组数据组成一个数组 其实就是创建数组
// 内置参数若干 每一个参数 最后都是数组的元素
let arr = Array.of(22,44,66,88,99,33);
console.log(arr);
console.log(Object.prototype.toString.call(arr));
// from : 将伪数组转化为真数组
let oBtns = document.getElementsByTagName('button');
let oBtn = document.querySelectorAll('button');
// console.log(Object.prototype.toString.call(oBtn));
console.log(Object.prototype.toString.call(oBtns));
// 将伪数组转化为真数组
let oBtnsArr = Array.from(oBtns);
console.log(Object.prototype.toString.call(oBtnsArr));
oBtnsArr.forEach(element=>console.log(element));
oBtn.forEach(element=>console.log(element));
// find : 查找数组中第一个符合条件的元素 和filter比较相似
// filter的返回值是数组 即使没有符合条件的 返回的也是空数组
// find返回的是一个数组元素 只返回一个 如果说没有符合条件的 返回undefined
let result1 = arr.filter(element=>element%3==0);
console.log(result1);
let result2 = arr.find(element=>element%3==0);
console.log(result2);
// findIndex : 查找数组中第一个符合条件的元素的下标 如果说数组元素不存在 那么返回-1
// 传参方式和find相同
let index = arr.findIndex(element=>element%7==0);
console.log(index);
</script>