一、有時候的根據需要需要計算數組中某個元素重復出現的個數
var arr = ["apple","orange","apple","orange","pear","orange"];
計算出來重復出現的元素個數:{apple: 2, orange: 3, pear: 1}
二、代碼實現
//統計一個數組中有多少個不重復的單詞: // 不用reduce時: var arr = ["apple","orange","apple","orange","pear","orange"]; function getWordCnt(){ var obj = {}; for(var i= 0, l = arr.length; i< l; i++){ var item = arr[i]; obj[item] = (obj[item] +1 ) || 1; } return obj; } console.log(getWordCnt());//{apple: 2, orange: 3, pear: 1} // 用reduce時: var arr = ["apple","orange","apple","orange","pear","orange"]; function getWordCnt(){ return arr.reduce(function(prev,next){ prev[next] = (prev[next] + 1) || 1; return prev; },{}); } console.log(getWordCnt());//{apple: 2, orange: 3, pear: 1}
補充知識點:
若查詢對象中某個屬性沒有,可自行為其添加
var muziObj = {}; muziObj['name'] = 'muzidigbig'; muziObj.age = 21; console.log(muziObj)//{name: "muzidigbig", age: 21}
若有不足請多多指教!希望給您帶來幫助!
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VeVb武林網的支持。
新聞熱點
疑難解答