javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > JS数组中常用方法技巧

JS数组中常用方法技巧学会进阶成为大佬

作者:cvvvvvvvvvv

这篇文章主要为大家介绍了JS数组中常用的方法技巧,学会了你就在进阶成为大佬的道路上又迈进了一步,希望能够有所帮助,祝大家多多进步

splice()方法

截取替换数组

第一个参数是起始位置,第二个是截取的个数,第三是替换的元素 ,返回值是截取的元素,原数组是剩余的元素。

join()方法

数组转字符串

()里的是以什么来连接,如果输入空字符串join('')则直接拼接不分割

例如:

let aaa = [1,2,3]
let bbb = aaa.join('-')  
let ccc = aaa.join('0')  
console.log(bbb) // '1-2-3'
console.log(ccc) //'10203'

reverse()方法

翻转数组

arr.reverse() 翻转数组,返回值是翻转好的数组

every()方法

查找数组不符合条件的

遍历检测数组的每一项 如果有一项不符合你定义的条件 则返回false 剩余的不再执行 ,只有每一项都符合条件 才返回true

第一个参数是数组的每一项,第二个是索引 第三个是当前数组

例:

arr:[121,3322,3215,3549,6899,46456]
arr.every(function(item,index,array){
    return item>2000  //检测数组的每一个值是否大于2000
})	//结果是false 除非数组每个值都大于2000 才是true

reduce()方法

求累加的值

可以将前面数组项遍历产生的结果与当前遍历项进行运算

第一个参数是 累计器(保存第二个值返回回来的结果)prev

第二个值是当前正在处理的值(遍历数组重头到尾)cur

第三个索引 index

第四个当前数组 arr

第五个 初始值 (函数后面)init

例:

var arr = [3,9,4,3,6,0,9];
var sum = arr.reduce(function (prev, cur) {
    return prev + cur;
},0);//由于初始值是0 也就是prev刚开始的值是0  索以运算起来就是  0+3=3  3+9=12  12+4=16 .... 每次得到的结果都会被prev存储进行下一次运算 这就是最简单的reduce求和

filter()方法

遍历并筛选数组

第一个参数是数组的每一项,第二个是索引 第三个是当前数组

它会遍历数组 按你定义的条件筛选你定义的条件 并且返回一个新数组,新数组里装着所有满足条件的元素

例:

var arr=[1,3,5,7,8]
var sum = arr.filter(function(value,index,arr){
    return value >3  //筛选arr数值中 大于3的元素 
})
console.log(sum) //返回的值是[5,7,8]

findIndex()方法 和find()方法

findIndex()

找出第一个满足条件的数组成员的索引 找不到返回-1

对于空数组,函数是不会执行的并没有改变数组的原始值。

find()

find()函数用来查找目标元素,找到就返回该元素,找不到返回undefined

查找函数有三个参数:

value:每一次迭代查找的数组元素。

index:每一次迭代查找的数组元素索引。

arr:被查找的数组。

forEach()方法

遍历循环数组
第一个值是每个参数
第二个值是索引
第三个是数组本身
多用于遍历数组里的元素

arr:[1,2,3]
arr.forEach(function(item,index,array){
console.log(item) //1,2,3
})

some()方法

检测数组中的元素是否满足条件,用于查找唯一的值 返回true 或false

var a = arr.some(function(item,index,array){
return item>3  //检测是否有大于3的元素,有则返回true,没有则返回false
})

只要找到一个满足条件的元素则终止循环 在some里面 遇到了return trun 就会终止循环

indexOf()方法

查找数组是否存在某个元素,返回下标。返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。
参数
第一个参数(必须):被查找的元素
第二个(可选):开始查找的位置(不能大于等于数组的长度,返回-1),接受负值,默认值为0。
严格相等的搜索:
数组的indexOf搜索跟字符串的indexOf不一样,数组的indexOf使用严格相等===搜索元素,即数组元素要完全匹配才能搜索成功。

sort ()方法

参数可选: 规定排序顺序的比较函数。
默认情况下sort()方法没有传比较函数的话,默认按字母升序,如果元素不是字符串的话,会调用toString()方法将元素转化为字符串的Unicode(万国码)位点,然后再比较字符。

// 字符串排列 首字母
var a = ["Banana", "Orange", "Apple", "Mango"];
a.sort(); // ["Apple","Banana","Mango","Orange"]
// 数字排序的时候 因为转换成Unicode字符串之后,有些数字会比较大会排在后面
var a = [10, 1, 3, 20,25,8];
console.log(a.sort()) // [1,10,20,25,3,8];

push()方法

push 向数组末尾添加新元素(可一次性添加多个)
返回值:新数组的length (长度)

const aa = [1,2,3]
aa.push(5,6)
console.log(aa) // [1,2,3,5,6]

pop()方法

尾部删除一个 返回值是被删除的元素

unshift()方法

头部添加, 返回值是数组长度

shift()方法

头部删除元素 返回值:被删除的元素

以上就是JS数组中常用方法技巧学会进阶成为大佬的详细内容,更多关于JS数组中常用方法技巧的资料请关注脚本之家其它相关文章!

您可能感兴趣的文章:
阅读全文