1.forEach方法
var arr = [2,3,4,5];// forEach/*1.对数组执行遍历*/arr.forEach((item,index)=>{console.log(item+"--"+index)item+=2;})返回 2--03--14--25--3第一个参数是当前的元素,第二个参数是该元素的下标
2.for of方法
var arr=[1,2,3];for (var i of arr){console.log(i);}返回 123
3.map方法
map 可以改变数组每一个项,得到一个新的值
var arr=[1,2,3];var res=arr.map(item=>{return item*2})console.log(arr);//[1,2,3]console.log(res);//[2,4,6]
例子
var arr=[{name:"html",value:"12px"},{name:"css",value:"13px"},{name:"vue",value:"11px"},]var res =arr.map(item=>{var value= parseInt (item["value"])*2;return item["value"]=value;})console.log(res);//[24 ,26,22]
数组的每一项是基础(简单)类型,执行map不会改变数组原来的结构
数组的每一项是复杂类型{object},那么执行map方法会改变原来的数据结构
var obj = [{name:"li",age:10},{age:"name",age:11}];var result = obj.map(item=>{return item.age = 0;})console.log(result);console.log(obj)
4.some、every方法
- some 返回boolean 只要数组中一项满足条件,就输出true
every 返回boolean 只有数组中每一项满足某个条件,就输出true
var arr = [1,2,3,4];var res = arr.some(item=>{return item>2;})var b = arr.every(item=>item>2);console.log(res);//trueconsole.log(b);//false
5.filter 方法
对数组元素的进行一个条件筛选
var arr=[1,2,3,4]var res=arr.filter(item=>item>2);console.log(res);输出[3,4]
例子:返回带武字的数组
<script>var arr=[{city:"武汉",state:true,spell:"wuhan"},{city:"北京",state:false,spell:"beijing"},{city:"武昌",state:true,spell:"wuchang"}]console.log(arr);var keyword="武";var res=arr.filter(item=>{// return item.city.includes(keyword)if(item.city.includes(keyword)){return item;}})console.log(res);</script>
<script>/* 返回数组String match*/var arr = [{city:"武汉",state:true,spell:"wuhan"},{city:"北京",state:false,spell:"beijing"},{city:"武昌",state:false,spell:"wuchang"}]/* city中含有武的组成一个数组 */var keyword = "武汉";var res = arr.filter(item=>{// return item.city.includes(keyword);if(item.city.includes(keyword) || item.spell.includes(keyword) ){return item;}})console.log(res)</script>
6. findIndex
对数组执行遍历,查询对应值得下标
var arr=[1,2,3];var index=arr.findIndex(item=>{return item==2;//查询元素2的下标值})console.log(index);//1
7.for in遍历对象
<script>/* for in 遍历对象 */var obj = {1001:false,1002:false,1003:false}/* . 只能读取具体的属性值[] 读取变量要通过中括号的方式读取*//* 将1003的值改为true */for(var key in obj){if(key ==1003){obj[key] = true}}console.log(obj)</script>
