var arr = [{ "name": "ZYTX", "age": "Y13xG_4wQnOWK1QwJLgg11d0pS4hewePU95UHtpMl3eE81uS74NC-6zu-Rtnw4Ix", "gender": "AAAAAA.doc" }, { "name": "ZYTA", "age": "Y13xG_4wQnOWK1QwJLgg11d0pS4hewePU95UHtpMl3eE81uS74NC-6zu-Rtnw4Ix", "gender": "BBBBBB.doc" }, { "name": "ZDTX", "age": "Y13xG_4wQnOWK1QwJLgg11d0pS4hewePU95UHtpMl3eE81uS74NC-6zu-Rtnw4Ix", "gender": "CCCCCC.doc" }, { "name": "ZYTX", "age": "Y13xG_4wQnOWK1QwJLgg11d0pS4hewePU95UHtpMl3eE81uS74NC-6zu-Rtnw4Ix", "gender": "AAAAAA.doc" }]; 根據 name 不同去重 方法一: var hash = {}; arr = arr.reduce(function(item, next) { hash[next.name] ? '' : hash[next.name] = true && item.push(next); return item }, []) console.log(arr); 方法二: var set = arr.reduce( function(set, item) { set[item["name"]] = item; return set; }, {} ); Object.keys(set).map(function(key) { return set[key]; }); 對於 es6 的 Set() 方法,目前只會對純數組 去重,對與對象數組的去重,等待進一步學習
