js关于数组的操作(合并数组、添加数组、循环等)
1. concat() 方法
concat() 方法用于连接两个或多个数组
var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" var arr2 = new Array(3) arr2[0] = "James" arr2[1] = "Adrew" arr2[2] = "Martin" document.write(arr.concat(arr2))
输出 George,John,Thomas,James,Adrew,Martin
2. map() 方法
map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值
var arr = [1,2,3,4,5,6,7]; var ar = arr.map(function(elem){ return elem*4; }); console.log(ar);//[4, 8, 12, 16, 20, 24, 28] console.log(arr);//[1,2,3,4,5,6,7]
let arr = [1,2,3,4,5] let newArr = arr.map((item)=>{ item = item<2?item=3:item return item }) console.log(newArr)//[3, 2, 3, 4, 5]
let newdatas = res.data.map(item => { item.xiaoji = parseInt(item.dongLiMonthElectricIV) + parseInt(item.kongTiaoMonthElectricIV) + parseInt(item.zhaoMingMonthElectricIV); return item })
map()方法可以把字符串数组和数字数组互换
//将数字数组转化为字符串数组 var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]; arr.map(String); //结果: ['1', '2', '3', '4', '5', '6', '7', '8', '9'] //将字符串数组转化为数字数组 var a = ['1', '2', '3', '4', '5', '6', '7', '8', '9'] a.map(Number); //结果:[1, 2, 3, 4, 5, 6, 7, 8, 9]
3.filter()方法
ilter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
注意: filter() 不会对空数组进行检测。
注意: filter() 不会改变原始数组。
//返回数组 ages 中所有元素都大于 18 的元素 var ages = [32, 33, 16, 40]; let data = ages.filter(item => { return item>= 18 }) console.log(data); //输出32,33,40
4.push方法、unshift方法
push()方法向数组末尾添加元素
let myArray=[11,22,33]; myArray.push(44,55); console.log(myArray);//11,22,33, 44,55]
unshift()方法向数组起始位置添加元素
var fruits = ["Banana", "Orange", "Apple", "Mango"]; fruits.unshift("Lemon","Pineapple"); //输出 Lemon,Pineapple,Banana,Orange,Apple,Mango
5.find(),findIndex()
用来查找目标元素,findIndex返回下标,find返回内容
结合es6使用
let typedata = this.resourcedata.find(item => item.type == '类型'); //返回内容 let typedata = this.resourcedata.findIndex((element)=>(element.name =='李四')); //返回下标
6.pop()
pop() 方法用于删除并返回数组的最后一个元素
var arr = new Array(3) arr[0] = "George" arr[1] = "John" arr[2] = "Thomas" document.write(arr) document.write("<br />") document.write(arr.pop()) document.write("<br />") document.write(arr) //输出 George,John,Thomas Thomas George,John
7.splice()
splice() 方法用于删除数组中指定的元素
var ary = [1,2,3,4]; ary.splice(0,1);
删除索引从0开的后面的一个内容
8.slice()
slice() 方法用于提取数组的片断
var ary = [1, 2, 3, 4, 5, 6]; ary.slice(1, 5); //输出[2, 3, 4, 5]
提取索引从1到5的内容
9.join()
join()方法将数组转换为字符串
array.join(","); //参数,可选,是一个分隔符号。如果没有参数,分隔符是英文逗号 var arr = ['gao','wanlimm','ssmay']; console.log(arr.join('-')); //输出 gao-wanlimm-ssmay
//字符串转换为数组
var arrstr = 'gao-wanlimm-ssmay';
console.log(arrstr.split('-'));