1 <!DOCTYPE html> 2 <html lang="en"> 3 4 <head> 5 <meta charset="UTF-8"> 6 <meta http-equiv="X-UA-Compatible" content="IE=edge"> 7 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 8 <title>Document</title> 9 10 11 </head> 12 13 <body> 14 <script> 15 // find、findIndex、map、filter 16 var id = '1'; 17 var arr = [ 18 { id: '1', name: 'filter' }, 19 { id: '2', name: '元素篩選出來' }, 20 { id: '3', name: 'find ' }, 21 { id: '4', name: 'findIndex ' }, 22 ] 23 // filter 過濾 根據條件對數組中元素進行篩選。返回符合條件的元素,組成一個新的數組, 24 var filArr = arr.filter(function (item, index, arr) { 25 if (item.id == id) { 26 return item; 27 } 28 }) 29 var filArr = arr.filter(item => item.id == id) 30 console.log('filArr ', filArr); 31 32 // find 查找 33 // find 找到數組中符合條件的元素,返回出來,只要找到符合條件的元素,就立刻返回該元素, 34 // 不會再繼續下去,所以find找的是一個元素 35 var arrfind = arr.find(function (item) { 36 return item.id == id 37 }) 38 console.log('arrfind ', arrfind); 39 40 // findIndex 找到符合條件元素的位置索引值 41 var idindex = arr.findIndex(function (item) { 42 if (item.id == id) { 43 return item; 44 } 45 }) 46 console.log('idindex ', idindex); 47 // .map 遍歷返回一個新的數組,並且新數組的長度與原來的相同 48 // map方法里面也是一個回調函數,該函數也是接受三個參數,並且需要返回值, 49 // index 索引值 arr 本身 50 //這個值將作為新數組里的元素,若是沒有返回值,則為undefined 2 51 var mapArr = arr.map(function (item, index, arr) { 52 return item; 53 }) 54 console.log(mapArr); 55 56 </script> 57 58 </body> 59 60 </html> 61 打印結果如下: 62 63 64 65