JavaScript数组常用数组函数
const arr = [1,12,13,4,5,6,7,8]; //找出符合条件的第一个元素,并返回。 否返回undefined const fount = arr.find((x)=>{ return typeof(x) ==="number"; }) console.log('查找-find===', fount); //12 //查找一个符合条件的元素,并返回元素索引,没有返回-1 const findIdx = arr.findIndex((x)=>{ return typeof(x) ==="string"; }) console.log("使用findIndex===", findIdx); //过滤符合条件的数据返回一个数组 let result = arr.filter((x)=>{ return x > 5; }) console.log('过滤-filter===', result); //过滤-filter=== (5) [12, 13, 6, 7, 8] //map执行数组每一个元素,返回一个新数组 let sqt = arr.map((x)=>{ return x*x; }) console.log('映射mapping', sqt); //映射mapping (8) [1, 144, 169, 16, 25, 36, 49, 64] //会把数组的x,y 运算完后再传进箭头函数开始计算。返回一个新对象 let toNum = arr.reduce((x,y)=>{ return x*10+y; }) console.log('reduce===',toNum); //reduce=== 23345678 arr.sort((x,y)=>{ if(x>y){ return -1; } if(x<y){ return 1; } return 0; }) //改变原来的数组 console.log('sort-排序', arr); //sort-排序 (8) [13, 12, 8, 7, 6, 5, 4, 1] //every 判断数组元素是不是符合测试条件,返回true或false let bool = arr.every((x)=>{ return x > 20; }) console.log('every=测试条件判断', bool); //every=测试条件判断 false
只是查找方便的总结