国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

JS中數組與對象的遍歷方法實例小結

2024-05-06 15:31:36
字體:
來源:轉載
供稿:網友

本文實例講述了JS中數組與對象的遍歷方法。分享給大家供大家參考,具體如下:

一、數組的遍歷:

首先定義一個數組

arr=['snow','bran','king','nightking'];

1、for循環,需要知道數組的長度;

2、foreach,沒有返回值,可以不知道數組長度;

arr.forEach(function(ele,index){console.log(index);console.log(ele)})

3、map函數,遍歷數組每個元素,并回調操作,需要返回值,返回值組成新數組,原數組不變;

var newarr=arr.map(function(i){  return "hello "+i});console.log(newarr)

4、filter函數:過濾通過條件的元素組成一個新數組,原數組不變;

var newarr=arr.filter(function(i){  return i == "bran"});console.log(newarr)

5、some函數,遍歷數組中是否有符合條件的函數,返回布爾值;

var yy=arr.some(function(i){  return i.length>4});console.log(yy)       //true

6、every函數,遍歷數組是否每個元素都符合條件,返回布爾值;

var xx=arr.every(function(i){  return i.length>4});console.log(xx)       //false

7、reduce函數,為數組中的每一個元素依次執行回調函數

語法:

arr.reduce(callback, initialValue)
[0,1,2,3,4].reduce(function(previousValue, currentValue, index, array){ return previousValue + currentValue;});

callback:執行數組中每個值的函數,包括四個參數;

previousValue:上一次調用回調返回的值,或者是提供的初始值(initialValue); currentValue:當前被處理的值; index:當前元素在數組中的索引; array:調用reduce的數組; initialValue:作為第一次調用callback的第一個參數;

例如:

var total = [0, 1, 2, 3].reduce(function(a, b) {  return a + b;});// total == 6var flattened = [[0, 1], [2, 3], [4, 5]].reduce(function(a, b) {  return a.concat(b);});// flattened is [0, 1, 2, 3, 4, 5]

要提供initialValue的話:

var total = [0, 1, 2, 3].reduce(function(a, b) {   return a + b;},4);console.log(total); //10

二、對象的遍歷

var obj={snow:1,bran:2,king:3,nightking:4};for(let i in obj){  console.log(i+','+obj[i])}

in也可以用來遍歷數組,不過i對應于數組的key值:

for(let i in arr){  console.log(i+','+arr[i])}

PS:這里再為大家推薦一款JS數組遍歷方式分析對比工具供大家參考:

在線JS常見遍歷方式性能分析比較工具:http://tools.Vevb.com/aideddesign/js_bianli

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 定边县| 迁安市| 团风县| 右玉县| 依安县| 蚌埠市| 子长县| 渝北区| 杭锦旗| 永宁县| 微博| 霍邱县| 措勤县| 新昌县| 龙门县| 岑溪市| 石楼县| 固阳县| 北京市| 桂平市| 家居| 聊城市| 沂南县| 山西省| 水富县| 乌兰察布市| 中阳县| 云林县| 松潘县| 东辽县| 泸州市| 杭锦后旗| 昭平县| 大渡口区| 六枝特区| 罗甸县| 门头沟区| 剑阁县| 延寿县| 灵山县| 静安区|