非响应式的JS的数组方法join,trim,map,reduce,filter,find,every,indexOf()

reduce

这篇文章很细

join

join,就是把数组转换成字符串,然后给他规定个连接字符,默认的是逗号( ,),书写格式:join(" "),括号里面写字符串 (“要加引号”),

var arr = [1,2,3];
console.log(arr.join());     // 1,2,3
console.log(arr.join("-"));   // 1-2-3
console.log(arr);         // [1, 2, 3](原数组不变)
map

map()方法,主要用于对每个数组里面的元素执行相同的函数来创建新的数组。返回的是经过特殊操作的元素

var arr = [1, 2, 3, 4, 5];
var arr2 = arr.map(function(item){
return item*item;
});
console.log(arr2);         //[1, 4, 9, 16, 25]
filter()

filter():“过滤”功能,数组中的每一项运行给定函数,返回满足过滤条件组成的数组。返回的是经过筛选的元素

var arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
var arr2 = arr.filter(function(x, index) {
return index % 3 === 0 || x >= 8;
}); 
console.log(arr2);         //[1, 4, 7, 8, 9, 10]
every

every():判断数组中每一项都是否满足条件,只有所有项都满足条件,才会返回true。相当于&&

var arr = [1, 2, 3, 4, 5];
var arr2 = arr.every(function(x) {
return x < 10;
}); 
console.log(arr2);         //true
var arr3 = arr.every(function(x) {
return x < 3;
}); 
console.log(arr3);         // false
some

some():判断数组中是否存在满足条件的项,只要有一项满足条件,就会返回true。相当于||

var arr = [1, 2, 3, 4, 5];
var arr2 = arr.some(function(x) {
return x < 3;
}); 
console.log(arr2);         //true
var arr3 = arr.some(function(x) {
return x < 1;
}); 
console.log(arr3);         // false
find

find(): 返回满足条件的第一个元素(注意是元素而不是下标!!)

 var arr = [1,2,3,4,5,6,7];
 var ar = arr.find(function(elem){
     return elem>5;
 });
 console.log(ar);//6
console.log(arr);//[1,2,3,4,5,6,7]
indexOf()和lastIndexOf()

indexOf():接收两个参数:要查找的项和(可选的)表示查找起点位置的索引。其中, 从数组的开头(位置 0)开始向后查找。

lastIndexOf:接收两个参q数:要查找的项和(可选的)表示查找起点位置的索引。其中, 从数组的末尾开始向前查找。

书写格式:arr.lastIndexOf( 5,4 )

var arr = [1,3,5,7,7,5,3,1];
console.log(arr.indexOf(5));       //2
console.log(arr.lastIndexOf(5));     //5
console.log(arr.indexOf(5,2));      //2
console.log(arr.lastIndexOf(5,4));   //2
console.log(arr.indexOf("5"));      //-1
也是可以跟find函数一样找出满足条件的元素的下标
var arr = [1, 2, 3, 4, 6, 7];
  var tem = arr.findIndex(function (elem) {
    return elem > 5;
  });
  console.log(tem);//4
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值