一、有時候的根據(jù)需要需要計算數(shù)組中某個元素重復(fù)出現(xiàn)的個數(shù)
var arr = ["apple","orange","apple","orange","pear","orange"];
計算出來重復(fù)出現(xiàn)的元素個數(shù):{apple: 2, orange: 3, pear: 1}
二、代碼實現(xiàn)
//統(tǒng)計一個數(shù)組中有多少個不重復(fù)的單詞: // 不用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}若有不足請多多指教!希望給您帶來幫助!
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對VeVb武林網(wǎng)的支持。
新聞熱點
疑難解答