[英]Check if array contains elements and if some elements are same then check for corresponding value in another array
var number = ['123', '123', '987', '567','675','675']
var city = ['Mumbai', 'Pune', 'Delhi', 'Bangalore','london','New York']
在上面的數組中,我想檢查不同城市的數字是否相同。 像 123,這個數字對於孟買和浦那來說是一樣的,那么它應該顯示一個錯誤。 最好使用具有最大 ES6 版本的 Javascript。
該函數將返回一個對象,其鍵是重復項,值是這些重復項的索引。 如果第一個數組中的數字數組對應於第二個數組中的城市名稱,則使用它們可以找到並錯誤地返回城市名稱
function checkReplicate (array) {
return array.reduce((acc, cur, i) => {
let hash = {},
filtred = array.filter(v1 => v1 === cur);
if (filtred.length > 1) {
acc[cur] ? acc[cur].push(i) : acc[cur] = [i];
}
return acc;
}, {});
}
如果返回空對象,則未找到匹配項。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.