当前位置:首页 > javascript > 正文内容

数组有哪些原生方法

自由小鸟6年前 (2019-08-06)javascript3600

赋值方法:
pop 和 push   

pop // 删除数组最后一个元素,返回被删除的元素

push // 在数组尾部插入1-N个元素,返回操作后数组的length


shift     //  删除数组第一个元素,返回被删除的元素

unshift  // 在数组头部插入1-N个元素,返回操作后数组的length

splice 

Array.splice(index , howMany[, element1[, ...[, elementN]]]); 

参数:

index:规定从何处添加/删除元素。

howmany:规定应该删除多少元素。

elements:规定要添加到数组的新元素,从 index 所指的下标处开始插入。

splice方法是对 pop、push、shift、unshift 的一个补充。

返回值是被删除的元素。



reverse  // 颠倒数组中元素的顺序,并返回逆序后的数组

sort     Array.sort([compareFunction]);

如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序。

说得更精确点,是按照字符编码的顺序进行排序。


访问方法
concat  Array.concat(value1, value2, ..., valueN);    // 链接2个或多个数组,并返回合并后的数组join
slice     Array.slice(begin[, end]);    // 数组中返回选定的元素

toString  Array.toString();    // 方法可把数组转换为字符串,并返回结果

indexOf      Array.indexOf(searchElement[, fromIndex]);    // 从头开始搜索

lastIndexOf  Array.lastIndexOf(searchElement[, fromIndex]);    // 从尾开始搜索


迭代方法
forEach   Array.forEach(callback[, thisArg]);    // 从头到尾遍历一次数组,并为数组中的每个元素,调用指定的函数map

参数:

callback:遍历数组时调用的函数

thisArg:指定 callback 的作用域

另外,callback会调用三个参数:

value:数组元素

index:数组索引

array:数组本身

1[1, 2].forEach(function(value, index, array) {2console.log(value, index, array);3});4//return5//1 0 [1, 2]6//2 1 [1, 2]

Note:forEach是无法通过break来中断数组的遍历。

解决方法:利用try方法来抛出异常,终止遍历。


filter    // 遍历数组调用方法,满足条件(返回true)的元素,将被添加到返回值的数组中some
every
reduce      // 使用指定的方法将数组元素进行组合,按索引从低到高(从左到右)

reduceRight  // 使用指定的方法将数组元素进行组合,按索引从高到低(从右到左)

     


版权声明:本文由Web学习之路发布,如需转载请注明出处。

本文链接:https://webge.net/?id=57

“数组有哪些原生方法” 的相关文章

正则的规则

正则的两个特点:懒惰:如果没有设置全局g的情况下,只匹配1次,这时候的lastIndex的值是0贪婪:...

event-loop

event-loop

如果知道js运行机制,在工作中会帮助我们更好的理解和编写代码,也知道为什么js是单线程js为什么是单线程原因,就是为了避免DOM渲染的冲突异步是一种“无奈”的解决方案,虽然有很多问题,如下:1,没按照书写方式执行,可读性差2,callback中不容易模块化什么是event-loop1,同步代码,直接...

数组去重

var a=[1,3,4,5,6,1,3,9,6]; //代码是去重后的 function arrfn(data){ let newObj={}; for(let i=0;i<data.length;i++...

SSO单点登陆

1、单点登录实现原理1)登录 注意:1)跳转SSO验证登录时,需要使用sendDirect重定向;2)浏览器与SSO之间建立的会话成为全局会话。扩展:a.spring项目如何获取本机的IP地址? 获得仅为ip地址不带端口b.spring项目如何获取项目端口? 2)注销 SSO认证中心有一个全...

js cookie实现在一天内只执行一次

function versionExpireTime(key,method) { var v = getCookie(key); if (!v) { method(true); //外面传进来的callback,方便告诉外部是否过期 //获取...