在項目中使用到json 按照內部屬性進行去重操作 於是自己簡單封裝的方法來進行去重 希望可以幫到你們!!
js代碼
//JSON去重
//arr是要進行去重的json串
//attribute是針對json串中哪個屬性進行去重
function unique(arr,attribute){
var new_arr=[];
var json_arr=[];
for(var i=0; i<arr.length; i++){
console.log(new_arr.indexOf(arr[i][attribute]));
if(new_arr.indexOf(arr[i][attribute]) ==-1){ // -1代表沒有找到
new_arr.push(arr[i][attribute]); //如果沒有找到就把這個name放到arr裏面,以便下次循環時用
json_arr.push(arr[i]);
} else{
}
}
return json_arr;
}
樣例分析:
var json=[
{name:“北京”,position:“天安門”},
{name:“北”,position:“安門”},
{name:“北京”,position:“天安門”},
{name:“北”,position:“天門”},
{name:“北京”,position:“天安門”},
{name:“京”,position:“門”}];
按照name去重:
var new_json=unique(json,“name”);
console.log(new_json);
按照position去重: