二十五、Vue常用操作数组方法
①arr.reverse() 获取倒序数组数据,改变原数组
arr.reverse()
②arr.length 数组长度
var l=arr.length
③arr.slice(start,end) 数组截取 start开始截取下标,end结束截取下标,返回一个新数组 (不包括end)(浅拷贝)
var b=arr.slice(0,2) //0,1
④arr.filter(()=> return 条件) 过滤函数,返回一个新数组 以下例子返回所有符合 data.title == value的数组
let arrdata = this.arr.filter((data) => { return data.title == value; });
⑤Array.push() 一个或多个元素添加到数组的末尾,改变原数组
⑥Array.concat() 将两个或多个数组合并为一个新数组,返回一个新数组
let myArray = [2,4,5,7,9,12,14]; let newArray = [1,2,3]; let result = myArray.concat(newArray); console.log(result);//[2,4,5,7,9,12,14,1,2,3]
⑦Array.join() 指定连接分隔符,以字符串形式输出,返回一个新数组
let myArray = [2,4,5,7,9,12,14]; let a=myArray.join("分隔"); //2分隔4分隔5分隔7分隔9分隔12分隔14 console.log(a)
⑧Array.forEach() 遍历数组的值和下标,并对其进行一定的操作
var myArray = [2,4,5,7,9,12,14]; var a=myArray.forEach((value,index)=>{ console.log("值:"+value+","+"下标:"+index) }) console.log(a);//forEach的返回值为undefined,
⑨map() 对数组中的每个元素执行一个函数,并返回一个新数组。
let myArray = [2,4,5,7,9,12,14]; let doubleArray = myArray.map(function(item){ return item * 2;}); console.log(doubleArray) //哥哥值乘以2
⑩Array.unshift() 一个或多个元素添加到数组的开头,改变原数组
let myArray = [2,4,5,7,9,12,14]; myArray.unshift(0); console.log(myArray) //[ 0, 2, 4, 5, 7, 9, 12, 14 ]
11 Array.sort() 排序 ,改变原数组
//小到大 let myArray = [12, 55, 34, 65, 10]; myArray.sort((a,b) => a - b); console.log(myArray) // [ 10, 12, 34, 55, 65 ]
//大到小 let myArray = [12, 55, 34, 65, 10]; myArray.sort((a,b) => b - a); console.log(myArray) // [ 65, 55, 34, 12, 10 ]
12 Array.splice() 用于删除或替换数组中的元素。通过指定要删除的元素的索引和数量,它修改了数组。改变原数组
let myArray = [2,4,5,7,9,12,14]; myArray.splice(2, 3); //删除下标2开始的三个元素,包括下标2 console.log(myArray) //[ 2, 4, 12, 14 ]
let myArray = [2,4,5,7,9,12,14]; myArray.splice(2, 3, 1, 2, 3);//替换下标2开始的三个元素,包括下标2,替换成1,2,3 console.log(myArray);//[2, 4, 1, 2, 3, 12, 14]
13 Array.reduce() 累加器
let myArray = [2,4,5,7,9,12,14]; let sumOfNums = myArray.reduce((sum, currentNum) => sum + currentNum, 0); console.log(sumOfNums);//53
14 Array.includes() 判断数组是否存在一些值,存在返回true,否则false
let myArray = [2,4,5,7,9,12,14]; console.log(myArray.includes(4)); //true console.log(myArray.includes(2, 1)); //false console.log(myArray.includes(12, 2));//true console.log(myArray.includes(18));//false
15 Array.indexOf() 判断数组是否存在一些值,存在返回该值下标,不存在返回-1
let myArray = [2,4,5,7,9,12,14]; console.log(myArray.indexOf(4)); //1 console.log(myArray.indexOf("4"));//-1 console.log(myArray.indexOf(9, 2));//4