目录
数组常用 api 介绍
例子
首页 web前端 js教程 javascript数组中常用的API总结

javascript数组中常用的API总结

Jul 20, 2018 am 11:46 AM
javascript

这篇文章给大家介绍的内容是关于javascript数组中常用的API总结,有着一定的参考价值,有需要的朋友可以参考一下。

数组常用 api 介绍

split():拆分字符串变成数组(对字符串操作)
join() :合并数组变成字符串(对数组操作)
concat():连接两数组
splice(begin,deleteCount,insert):拼接
splic(begin,end):截取[begin,end)
sort(callball(value1,value2)):排序
resever():反序
filter(callback(currentValue,index)):筛选
map(callback(currentValue,index)):遍历,有返回值,和forEach类似
forEach(callback(currentValue,index)):遍历,没有返回值
reduce(callback(array,currentValue,index)[,array]):累计处理
arguments:在函数内部使用,将函数的参数变成伪数组(不能用数组的 api)

例子

sort排序:如果value1 < value2返回-1,升序排列;返回1,降序排列

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

var arr = [1,5,4,3,2,6,7]

arr.sort((value1,value2) => {

    if(value1 < value2){

        return -1    //升序

    }else if(value1 > value2){

        return 1    //降序

    }else{

        return 0

    }

})<h3>

<code>filter</code>筛选数组,接受一个回调函数,回调函数的参数<code>value</code>、<code>index</code>(可选)、<code>array</code>(可选)</h3>

<pre class="brush:php;toolbar:false">let arr = [1,2,3,4,5,6,7,8,9]

arr.filter((value,index) =&gt;{

  console.log(index)

  return value &gt; 5    //筛选条件

})

登录后复制

1

2

3

4

5

6

7

let fruits = ['apple''banana''grapes''mango''orange'];

function find(element){

    return fruits.filter((e)=&gt;{

        return e.indexOf(element) &gt;= -1    //indexOf查到元素,找到返回元素的索引

    })

}

find('ap'//['apple','grapes']

登录后复制

mapforEach之间的区别是:map有返回值,forEach没有返回值;要forEach能返回值出来,在它内部定义一个变量存储遍历的值就可以了。

1

2

3

var a = [1,2,3,4]

a.map(e =&gt; e*2)    //[1,4,6,8]

a.forEach(e =&gt; e*2)    //undefined, return 也不会出来

登录后复制

reduce接受两个参数,回调函数和回调函数的第一个参数(可选);回调函数接受四个参数:1、回调函数的返回值(处理结果)或者reduce的第二个参数;2、正在处理的元素;3、正在处理元素的索引;4、调用reduce的数组。

如果reduce接收第二个参数,那么回调函数的第一个参数就是它(如去重,运行逻辑是把待处理数组的每一项处理后在一个个push进去,是加的过程);如果没有第二个参数,那么回调函数的第一个参数就是待处理数组的第一项(如摧毁数组,运行逻辑是把待处理数组直接拿过来集中处理,是减的过程)。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

//去重:把待处理数组的每一项处理后在一个个`push`进去,是加的过程

var a = [1,2,3,2,4,5,3,1]

a.sort().reduce((arr,currentValue) =&gt; {

  if(arr.length === 0 || arr[arr.length-1] !== currentValue){

    arr.push(currentValue)

  }

  return arr

},[])    //[1,2,3,4,5]

 

//摧毁数组:把待处理数组直接拿过来集中处理,是减的过程

function destroyer(arr) {

    return [].slice.call(arguments).reduce((current,next) =&gt;{

        return current.filter((e) =&gt; {

            return e !== next

        })

    })

}

destroyer([1, 2, 3, 1, 2, 3], 2, 3);    //[1,1]

登录后复制

arguments虽然不是数组,但可以将它转变成真正的数组,下面是两种方法

1

2

3

4

5

6

7

function array(arr){

    console.log(arr)    //[1,2,3,4,5],注意是一个伪数组,不能用数组的方法

}

array(1,2,3,4,5)

 

var args = Array.prototype.slice.call(arguments);

var args = [].slice.call(arguments);

登录后复制

相关推荐:

js中字符串的全排列的算法解析

以上是javascript数组中常用的API总结的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

如何使用WebSocket和JavaScript实现在线语音识别系统 如何使用WebSocket和JavaScript实现在线语音识别系统 Dec 17, 2023 pm 02:54 PM

如何使用WebSocket和JavaScript实现在线语音识别系统

WebSocket与JavaScript:实现实时监控系统的关键技术 WebSocket与JavaScript:实现实时监控系统的关键技术 Dec 17, 2023 pm 05:30 PM

WebSocket与JavaScript:实现实时监控系统的关键技术

如何使用WebSocket和JavaScript实现在线预约系统 如何使用WebSocket和JavaScript实现在线预约系统 Dec 17, 2023 am 09:39 AM

如何使用WebSocket和JavaScript实现在线预约系统

如何利用JavaScript和WebSocket实现实时在线点餐系统 如何利用JavaScript和WebSocket实现实时在线点餐系统 Dec 17, 2023 pm 12:09 PM

如何利用JavaScript和WebSocket实现实时在线点餐系统

简易JavaScript教程:获取HTTP状态码的方法 简易JavaScript教程:获取HTTP状态码的方法 Jan 05, 2024 pm 06:08 PM

简易JavaScript教程:获取HTTP状态码的方法

JavaScript和WebSocket:打造高效的实时天气预报系统 JavaScript和WebSocket:打造高效的实时天气预报系统 Dec 17, 2023 pm 05:13 PM

JavaScript和WebSocket:打造高效的实时天气预报系统

如何在JavaScript中获取HTTP状态码的简单方法 如何在JavaScript中获取HTTP状态码的简单方法 Jan 05, 2024 pm 01:37 PM

如何在JavaScript中获取HTTP状态码的简单方法

javascript中如何使用insertBefore javascript中如何使用insertBefore Nov 24, 2023 am 11:56 AM

javascript中如何使用insertBefore

See all articles