js 判断数组重复元素以及重复的个数以及重复数第一次出现的下标
时间:2023-04-30 14:37:00
原地址
var _arr = [ '保山市', '保山市', '保山市', '保山市', '保山市', '保山市', '楚雄州', '楚雄州', '楚雄州', '楚雄州', '楚雄州', '楚雄州', '大理州', '大理州', '大理州', '大理州', '德宏州', '德宏州', '德宏州', '德宏州', '红河州', '红河州', '红河州', '红河州', '红河州', '昆明市', '昆明市', '昆明市', '丽江市', '丽江市', '临沧市', '临沧市', '普洱市', '普洱市', '普洱市', '普洱市', '曲靖市', '曲靖市', '曲靖市', '曲靖市', '曲靖市', '曲靖市', '文山州', '文山州', '文山州', '玉溪市', '玉溪市', '玉溪市', '昭通市', '昭通市', '昭通市', '昭通市']; var _res = []; // //_arr.sort(); for (var i = 0; i < _arr.length;) {
var count = 0; var index=-1; for (var j = i; j < _arr.length; j ) {
if (_arr[i] == arr[j]) {
count++; //计算出现了几次
index=i;//第一次出现的下标
}
}
_res.push([_arr[i], count,index]);
i += count;
}
//_res 二维数维中保存了 值和值的重复数以及第一次出现的下标
var _newArr = [];
for (var i = 0; i < _res.length; i++) {
// console.log("值:"+_res[i][0] + "重复次数:" + _res[i][1]++ "第一次下标:" + _res[i][2]);
_newArr.push(_res[i][0] + 'x' + _res[i][1]+"=>"+_res[i][2]);
}
console.log(_newArr);