` // Array.from() //将伪数组转换为数组,只要有length属性就可以转换成数组
// Array.of() //将一组值转换为数组,类似声明数组
// Array.isArray() //判断是否为数组
// var arr = [1,2,3]
//头尾的增删
// var arrPush = arr.push(5) //添加在数组的尾部,并修改数组的长度,返回数组的长度,原数组改变
// var arrPop = arr.pop() //移除数组末尾的最后一项,修改数组的长度,返回最后一项的值,原数组改变
// var arrShift = arr.shift() //移除数组第一项 ,并返回第一项的值,修改原数组
// var arrUnshift = arr.unshift(5) // 在数组前添加值,修改原数组,并返回修改后数组的长度
//数组方法,添加的话返回的就是添加后数组的长度,删除就是返回删除的值,都会修改原数组的
//排序
// let arr = [1, 5, 10, 15];
// var arrReverse = arr.reverse() //反转数组,返回值是修改之后的数组,原数组也会被修改
// var arrSort = arr.sort() //从小到大排序,但它的排序方法是根据数组转换字符串后来排序的,返回转换后 的数组,原数组发生改变
// console.log(arr,arrSort);
//链接两个数组
// var arrConcat = arr.concat([6,7,8,9,10]) //返回链接后的数组,原数组不发生改变
// console.log(arr,arrConcat);
//截取数组中的一部分
var arr = [1, 2, 3, 4, 5, 2, 6, 7, 8, 9]
// var arrSlice = arr.slice(3,5) //返回截取的数组,不改变原数组
// var arrSplice = arr.splice(1,3) //删除数组任意的值,返回删除的值,修改原数组
// var arrSplice = arr.splice(1, 0, 'ma', 'xio') //在数组中任意位置插入值,返回空数组,修改原数组
// var arrSplice = arr.splice(1, 1, 'ma', 'xio') //在数组中任意位置替换值,返回被替换掉的值,修改原数组
// console.log(arr, arrSplice);
// var arrFill = arr.fill(1) //一个参数,数组填充指定的值,返回填充后的数组,原数组改变
// var arrFill = arr.fill(1,4,10) //三个参数(填充的值,被填充的索引下标开始,结束(不包含)),数组填充指定的值,返回填充后的数组,原数组改变
// console.log(arr,arrFill);
//位置方法
// var arrIndexof = arr.indexOf(2) //正着查询数组中值第一个为2的索引下标,索引从零开始
// var arrIndexof = arr.indexOf(2,2) //正着查询数组中值第二个为2的索引下标,索引从零开始
// var arrLastindexof = arr.lastIndexOf(2) //反着查询数组中值第一个为2的索引下标
// var arrLastindexof = arr.lastIndexOf(2,2) //反着查询数组中值第二个为2的索引下标
// var arrFind = arr.find(val => val > 30) //找出第一个符合条件的值,返回的是第一个满足条件的值,没有符合条件的返回undefined
// var arrFindindex = arr.findIndex(val => val > 30) //找出第一个符合条件的值的索引下标,返回得时第一个满足条件的值,没有是返回-1
// var arrIncludes = arr.includes(20) //判断数组中有没有这个值,返回true和false
// console.log(arrFind, arrFindindex,arrIncludes);
//迭代方法
// var arrEvery = arr.every(val => val > 5) //对数组中的每一项进行判断,全部满足返回true,有一个不满足就返回false,返回true和false
// var arrSome = arr.some(val => val >5) //对数组中的每一项进行判断,有一项满足就返回true 否则返回false
// var arrFilter = arr.filter(val => val > 5) //对数组中的每一项进行判断,返回所有满足条件的项组成一个新的数组,原数组不发生改变
// arr.forEach(val => val + 5) //对数组中的每一项进行计算,不返回值,,单纯的循环
// var arrMap = arr.map(val => val + 5) //对数组中的每一项进行计算,计算结果组成一个新的数组返回, 原数组不变
// var arrReduce = arr.reduce((v1,v2) => v1 + v2) //正向把所有的项累加
// var arrReduceRight = arr.reduceRight((v1,v2) => v1 + v2) //反向把所有的项累加
// var arrEntries = arr.entries() //对键名遍历,返回一个遍历器对象
// var arrKeys = arr.keys() //对键值遍历,返回一个遍历器对象
// var arrValues = arr.values() //对键值对遍历,返回一个遍历器对象
// entries()是对键值对的遍历
for (let val of arr.entries()) { console.log(val); /** [ 0, 1 ] [ 1, 2 ] [ 2, 3 ] */ }
// keys()是对键名的遍历 for (let val of arr.keys()) { console.log(val); // 0 1 2 }
// values()是对键值的遍历 for (let val of arr.values()) { console.log(val); // 1 2 3 }
// console.log(arr, arrEntries,arrKeys,arrValues); `