数组的遍历方法
1...for(var i=0;i<arr.length;i++){ }
------------------------------------------------------------
2...arr.forEach(function(val,index,arr){
console.log(val,index,arr) //第三个参数就是原数组可要可不要;
})
arr.forEach((val,index,arr)=>{
console.log(this,val,index,arr) //第三个参数就是原数组可要可不要;
},bind(123)) //this指向会变箭头函数;
------------------------------------------------------------
3...arr.map((val,index,arr)=>{
console.log(val,index,arr) //正常需要返回值,并且返回的新的一个数组;
}) 注意:一般需要有return 没有则相当于forEach;重新整理数据结构
------------------------------------------------------------
4...arr.filter((val,index,arr)=>{
return val.xxx==条件; //过滤不合格的元素;
})
-----------------------------------------------------------
5...arr.some((val,index,arr)=>{
//类似查找,数组某个元素符合则返回true
})
let arr = [1,2,3]
let newArry = arr.some((val,index,arr)=>{
return val==2
})
console.log(newArry) //true;
-----------------------------------------------------------
6...arr.every((val,index,arr)=>{
//数组每个元素符合则返回true
})
let arr = [1,3,5]
let newArry = arr.every((val,index,arr)=>{
return val%2==1
})
console.log(newArry) //true;
-----------------------------------------------------------
7...arr.reduce((prev,now,index,arr)=>{
return prev+now; //求数组的和、阶乘;第一个参数表示前一个,第二个表示当前
})
let arr = [1,2,3]
let sum = arr.reduce((prev,now,index,arr)=>{
return prev+now; //阶乘Math.pow(prev,now)输出
})
console.log(sum) //输出6;
------------------------------------------------
let arr = [2,2,3]
let sum = arr.reduce((prev,now,index,arr)=>{
return Math.pow(prev,now); //阶乘prev**now
})
console.log(sum) //输出64;
-----------------------------------------------------------
8...for(let val of arr){
//arr.keys() //数组下标
//arr.entries() //数组的某一项
}
let arr1=[1,2,3,4];
for(let a of arr1.keys()){
console.log(a) //结果:0,1,2,3遍历了数组arr的索引
}
--------------------------------------------------
let arr2=[1,2,3,4];
for(let a of arr2.values()){
console.log(a) //结果:1,2,3,4遍历了数组arr的值
}
-----------------------------------------------------------
扩展运算符:
...

let arr = [1,2,3]
let arr2 = [...arr] //es6
let arr3 = Array.form(arr) //es6
let arr4 = [].call(arr) //es5
--------------------------------------------------------------
Array.form:把类数组(获取一组元素、arguments)对象转成数组;如ul li;具备length属性的;
特别的json:
let json = {
0:"a",
1:"b",
2:"c",
length:3
}
let newArr2 = Array.form(json)
console.log(newArr2) //["a","b","c"]
特别的String:
let str = "stfssfg";
let arr1 = str.split("");//es5
console.log(arr1)
let arr2 = Array.form(str)
console.log(arr2)
--------------------------------------------------------------
Array.of();把一组值转成数组;
let arr = Array.of("xx1","xx2","xx3")
console.log(arr) //["xx1","xx2","xx3"]
--------------------------------------------------------------
arr.find() 查找找出第一个符合条件的数组成员;没找到返回undefined;
let arr = [1,10,20,200,90]; let newArr = arr.find((val,index,arr)=>{
return val>100;
})
console.log(arr) //200;
--------------------------------------------------------------
arr.findindex() 查找位置;没找到返回-1;
let arr = [1,10,20,200,90]; let newArr = arr.findindex((val,index,arr)=>{
return val>1000;
})
console.log(arr) //-1;
--------------------------------------------------------------
arr.fill(填充的东西,开始位置,结束位置)
let arr = new Arry(10);
arr.fill("默认值",1,5)
--------------------------------------------------------------
arr.includes() 判断数组里面是否包含这个值;
let arr = [1,2,3,4];
let arr1 = arr.includes(2);
cconsole.log(arr1) //true;布尔值

es5/6数组遍历以及常用的一些方法的更多相关文章

  1. 关于 ES5 & ES6 数组遍历的方法

    ES5 数组遍历方法 1.for 循环 , , , , ] ; i < arr.length; i++) { console.log(arr[i]) } 2.forEach , , , , ] ...

  2. js数组遍历的常用的几种方法以及差异和性能优化

    <script type="text/javascript"> /*对比: 1.map速度比foreach快 2.map会返回一个新数组,不对原数组产生影响,forea ...

  3. ES6-11学习笔记--数组遍历

    ES5中数组遍历方式: for循环 forEach():没有返回值,只是针对每个元素调用func map():返回新的Array,每个元素为调用func的结果 filter():返回符合func条件的 ...

  4. js中数组遍历常用的方法

    常见的数组遍历方法,比如 for in,for  of, forEach,map,filter,every,some,find,reduce等 1,普通for循环,经常用的数组遍历 var arr = ...

  5. JavaScript:常用的一些数组遍历的方法

    常用的一些遍历数组的方法: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> ...

  6. ES5 对数组方法的扩展 以及 正则表达式

    ES5 对数组的扩展 forEach map some every indexOf lastIndexOf forEach 与 map 语法: 数组.forEach(function ( v, i ) ...

  7. JS几种数组遍历方式总结

    JS数组遍历的几种方式 JS数组遍历,基本就是for,forin,foreach,forof,map等等一些方法,以下介绍几种本文分析用到的数组遍历方式以及进行性能分析对比 第一种:普通for循环 代 ...

  8. JS几种数组遍历方式以及性能分析对比

    前言 这一篇与上一篇 JS几种变量交换方式以及性能分析对比 属于同一个系列,本文继续分析JS中几种常用的数组遍历方式以及各自的性能对比 起由 在上一次分析了JS几种常用变量交换方式以及各自性能后,觉得 ...

  9. 4日6日--ES5新增数组方法

    forEach使用的函数调用,所以占内存比较大,不如定长for循环和迭代for循环 1.通过forEach将数组中的元素逐个表示出来(遍历方法,读取操作). 2.通过map将原数组中的元素进行算数运算 ...

随机推荐

  1. Oracle:通过oracle sql developer工具导入excel数据

    我使用的是oracle sql developer3.1版本,以前developer2.×老版本的excel导入功能有问题. excel文件内容如下: 第一步:找到要导入的表,右键-->导入数据 ...

  2. 西门子PLC存储器、地址区

    S7-1500 CPU的存储器 1.内部集成的存储器:工作存储器,保持性存储器,系统存储器 2.外插的SIMATIC存储卡:装载存储器去 装载存储器:断电信息不丢失,主要存储项目中程序块,数据块,工艺 ...

  3. jquery实现无限滚动瀑布流实现原理

    现在类似于pinterest这类的表现效果很火,其实我比较中意的是他的布局效果,而不是那种瀑布流. 虽然我不是特别喜欢这种瀑布流的表现样式,但是还是写了几篇关于无限滚动瀑布流效果的文章,Infinit ...

  4. Struts2的各种标签库

    1 在JSP中使用taglib编译指令导入标签库 <%@ taglib prefix="s" uri="/struts-tags" %> ----- ...

  5. Task用法

    转: https://www.cnblogs.com/wyy1234/p/9172467.html

  6. 洛谷 - P1034 - 矩形覆盖 - dfs

    https://www.luogu.org/problemnew/show/P1034 可能是数据太水了瞎搞都可以过. 判断两个平行于坐标轴的矩形相交(含顶点与边相交)的代码一并附上. 记得这里的xy ...

  7. Codeforces - 773A - Success Rate - 二分 - 简单数论

    https://codeforces.com/problemset/problem/773/A 一开始二分枚举d,使得(x+d)/(y+d)>=p/q&&x/(y+d)<= ...

  8. poj 2891 Strange Way to Express Integers【扩展中国剩余定理】

    扩展中国剩余定理板子 #include<iostream> #include<cstdio> using namespace std; const int N=100005; ...

  9. 2.while循环 编码的初识,逻辑运算符 格式化输出

    while循环 循环 while True: # while 是关键字 条件 print('精忠报国') print('团结就是力量') print('北京欢迎你') print('葫芦爷爷救娃娃') ...

  10. javascript E5面向对象和 E6面向对象

    javascript es6之前的面向对象方法: 一般使用构造函数来实现 function Person (name, age) { this.name = name; this.age = age; ...