let arr=[{a:1},{a:2},{a:3}];
//forEach 数组循环
// 返回void
arr.forEach(i=>{
// i为arr中的元素
})
//filter 数组过滤 如果return 的值为true 则将当前的遍历的元素添加到返回的数组中去
// 返回[]
arr.filter(i=>{
return i.a>2;
})
//map 数组循环 遍历数组,并将遍历数组中的每一个元素映射返回 注意不管是否有return值返回的数组的length不变 只是无return值的元素位置会变成undefined
arr.map(i=>{ })
//every 数组循环 判断数组内每一个元素是否都满足件 返回bool 注意 当发现一个元素不满足条件时,遍历终止 返回false
arr.every(i=>{
return i.a>=1;
})
//some 数组循环 判断数组内是否存在满足条件的元素,返回bool 注意 当发现一个元素满足条件时,遍历终止 返回true
arr.some(i=>{
return i.a>2;
})
//reduce 数组循环 将数组内所有元素相加 并返回最终值 注意 此方法第一次遍历时a为数组第一个元素 b为第二个元素,第二次及第二次以上遍历时 a为前a与b之和 b为前b的下一个元素
arr.reduce((a,b)=>{
return {a:a.a+b.a};
}) //find 数组循环 遍历数组内部所有元素,返回第一个满足条件的元素同时遍历结束,如果没有则返回undefined
arr.find(i=>i>10); //注意!!! 以下皆为数组变异方法,会改变数组本身的状态 //push 在数组的末尾添加一个元素 返回数组长度
arr.push({a:4}) //pop 移除数组最后一个元素 返回移除的元素
arr.pop() //unshift 在数组的首部添加一个元素 返回数组长度
arr.unshift() // shift 移除数组的第一个元素 返回移除的元素
arr.shift() //splice 万能方法 此方法可实现数组的增加 删除 以及改变元素位置;返回 删除的元素组成的数组若没有删除的元素则返回一个空数组 第一个执行操作的初始位置,第二个需要影响多少个元素,第三个及第三个以后表示插入多少个元素插入多少个元素;
let brr=[1,2,3,4,5,6];
let ret= brr.splice(0,5);//执行删除方法 从0号位元素开始包括第一个元素,删除五个元素,插入0个元素 返回删除的元素;
let ret2=brr.splice(0,5,5,4,3,2,1);//执行更换方法,从0号位元素开始包括第一个元素,删除五个元素,插入5,4,3,2,1元素 返回删除的元素
let ret3=brr.splice(0,0,99,99)//执行插入方法,从第0号元素开始,删除0个元素,插入99,99,返回删除的元素 //sort 数组排序 此方法可实现数组的自定义的排序 此方法每次遍历返的a的值由return,其内部有一个排序算法,感兴趣的可以自己打印了解,这里提供一个比较方便的记忆方法b-a为降序排列,a-b为升序排列,返回一个数组;
let arr2=[1,9,8,2,5,6];
let ret1=arr2.sort((a,b)=>{
return b-a;
});//注意 此方法放回的并不是一个全新的数组而是一个引用,其效果等同ret1=arr2;!!此方法也是一个变异方法 //reverse 数组反转 将数组的排列顺序反转过来 返回 反转顺序的数组的引用 其效果等同于 ret=arr !!此方法也是一个变异方法
let ret= arr.reverse(); // 以下为非变异方法
//join 使用指定的连接符拼接数组 返回一个字符串
let arr3=[1,2,3,4,5,6,4];
let str=arr3.join(',');
// console.log("str",str);//str 1,2,3,4,5,6,4 可使用join("")空字符串 返回1234564 //toString 将数组内部的元素拼接成一个字符串 不能指定拼接字符串,如有拼接需求推荐使用join
let arr4=[1,2,3,4,5,6];
str= arr4.toString();
console.log('str',str); //concat 拼接数组 将一个数组拼接至concat后 返回两个数组拼接的新数组
let concat=[1,2,3,4,5,6,7];
let concat1=[1,2,3,4,5,6,7];
let con=concat.concat(concat1); //slice 截取数组 返回一个截取元素组成的数组 非变异方法 接受2个参数 第一个位截取开始的位置 第二个为截取数量
let ret =arr.slice(0,5);

js 数组 常用方法的更多相关文章

  1. js数组常用方法汇总

    判断某个对象是否是数组: instanceof.Array.isArray() 对于一个网页或者一个全局作用域可以使用instanceof操作符. if(value instanceof Array) ...

  2. js 数组常用方法

    var arr =[0,1,2,3,4,5,6,7,8,9]; 1,shift() 删除数组的第一个元素,返回删除的值  //这里返回0 2,unshift(1,2)  把参数添加到数组的前面,返回值 ...

  3. js 数组常用方法说明

    //push 向数组最后添加一项 var arr = ['one', 'two', 'three']; arr.push("four"); console.log(arr);//[ ...

  4. JS数组常用方法

      // 来自 http://www.runoob.com/jsref/jsref-obj-array.html   var arr01 = [ "fuc" , "shi ...

  5. JS数组常用方法总结

    JavaScript中创建数组有两种方式 (一)使用 Array 构造函数: var arr1 = new Array(); //创建一个空数组 var arr2 = new Array(20); / ...

  6. js数组常用方法,含es5

    (1)基本的数组方法 1.join() Array.join()方法将数组中所有元素都转化为字符串并连接在一起,返回最后生成的字符串.可以自己指定分隔的符号,如果不指定,默认使用逗号 var arr ...

  7. js数组常用方法整理

    学疏才浅,若有不对的地方,希望大家可以帮忙指正出来. 1. Array.push(),向数组的末尾添加一个或多个元素,并返回新的数组长度.原数组改变. 2. Array.pop(),删除并返回数组的最 ...

  8. 优化 JS 条件语句及JS 数组常用方法, ---- 看完绝对对日后开发有用

    前言: 日常所说的优化优化.最后我们到底优化了哪些,不如让我们从代码质量开始:个人觉得简洁简化代码其实觉得存在感挺强烈的QAQ 1. 获取URL中 ?后的携带参数: 这是我见过最简洁的了,若有更简洁的 ...

  9. es6 js数组常用方法

    一:会改变自身的方法 1.array.push(element1, ...elementN) 添加一个或多个元素到数组的末尾,并返回数组新的长度 2.array.unshift(element1, . ...

随机推荐

  1. 爱的传送带: print(.format())

    场景:用Python设计一个程序,可以打印一下祝福语: 致某某某:  今年是XXXX年的元旦,   我的祝福送四方,   东方送你摇钱树,   西方送你永安康,   南方送你成功路,   北方送你钱满 ...

  2. 一个比较独特的"HelloWorld"

    为什么说是特殊的helloworld呢给全世界的服务器发送一个请求,这就是我"打招呼"的方式核心内容就是:向所有的ipv4地址发送一个请求即x.x.x.x,如果其是web服务,就拿 ...

  3. git - Mac生成SSH key

    步骤1.检查是否已经存在SSH Key 打开电脑终端,输入以下命令: ls -al ~/.ssh 会出现两种情况 步骤2. 生成/设置SSH Key 继续上一步可能出现的情况 (1)情况一: 终端出现 ...

  4. Android中父View和子view的点击事件的执行过程

    Android中的事件类型分为按键事件和屏幕触摸事件,Touch事件是屏幕触摸事件的基础事件,有必要对它进行深入的了解.  一个最简单的屏幕触摸动作触发了一系列Touch事件:ACTION_DOWN- ...

  5. 思维构造+匹配——cf1199E

    直接枚举每条边,如果边加到图中后还是个匹配图,就直接加,反之就不加 这样加完所有边后,剩下的点必定可以组成一个独立集:因为如果剩下的点中还有互相匹配的,那么这对点应该在加边时就被算到匹配图中 所以要么 ...

  6. 密码学之RSA基础

    预备数论知识 互质关系 如果两个正整数,除了1以外,没有其他公因子,那么就称这两个数是互质关系 比如:4和7,13和61 欧拉函数 思考:任意给定整数n,在小于等于n的正整数中,有多少个数与n构成互质 ...

  7. Eclipse 安装Activiti插件

    建议使用vpn或其他翻墙手段安装(否则下载速度可能很慢) 我的博客中有介绍如何自己搭建属于自己的ssr,https://www.cnblogs.com/zktww/p/10839347.html(由于 ...

  8. Socket/TCP粘包、多包和少包, 断包

    转发: https://blog.csdn.net/pi9nc/article/details/17165171 为什么TCP 会粘包 前几天,调试mina的TCP通信, 第一个协议包解析正常,第二个 ...

  9. spring4.3.5基本配置

    1.去官网下载必要的jar包,以及: 2.新建一个web项目,在Window->Java->Build Path->User Libraries 按照步骤1,2把spring的jar ...

  10. 并发编程(二)——利用Process类开启进程、僵尸进程、孤儿进程、守护进程、互斥锁、队列与管道

    Process类与开启进程.守护进程.互斥锁 一.multiprocessing模块 1.multiprocessing模块用来开启子进程,并在子进程中执行我们定制的任务(比如函数),该模块与多线程模 ...