var arr=[[2,445362],[3,445362],[4,445362],[5,666],[6,666],[7,669]];
var priceArray=[];
var vipArray=[];
arr.forEach(function(item){
priceArray.push(item[1]+"");
vipArray.push(item[0]);
})
console.log(vipArray);
console.log(priceArray);
vipArray.reverse();
priceArray.reverse();
var sameIndex=[];
for(var i=0;i<priceArray.length;i++){
var index=priceArray.indexOf(priceArray[i]);
var lastIndex=priceArray.lastIndexOf(priceArray[i]);
if(priceArray[i]==-1)
continue;
while(index!=lastIndex){
sameIndex.push(lastIndex);
priceArray[lastIndex]=-1;
lastIndex=priceArray.lastIndexOf(priceArray[i]);
}
sameIndex.push(i);
sameIndex.push(priceArray[i]);
}
var finalStr="";
sameIndex.forEach(function(item){
if(typeof item=="number"){
finalStr+="vip"+vipArray[item]+"-"
}else{
finalStr+=item+","
}
})
finalStr=finalStr.substring(0,finalStr.length-1);
var finalArray=finalStr.split(',').reverse();
console.log(sameIndex);
console.log(finalArray);
var finalStr2="";
finalArray.forEach(function(item){
var arr=item.split('-');
if(arr.length==2){
finalStr2+=arr[0]+":"+arr[1]+",";
}else if(arr.length==3){
finalStr2+=arr[0]+"-"+arr[1]+":"+arr[2]+",";
}else if(arr.length>3){
finalStr2+=arr[0]+"-"+arr[arr.length-2]+":"+arr[arr.length-1]+",";
}
})
finalStr2=finalStr2.substring(0,finalStr2.length-1);
document.body.innerHTML=finalStr2
//结果:vip2-vip4:445362,vip5-vip6:666,vip7:669
var priceArray=[];
var vipArray=[];
arr.forEach(function(item){
priceArray.push(item[1]+"");
vipArray.push(item[0]);
})
console.log(vipArray);
console.log(priceArray);
vipArray.reverse();
priceArray.reverse();
var sameIndex=[];
for(var i=0;i<priceArray.length;i++){
var index=priceArray.indexOf(priceArray[i]);
var lastIndex=priceArray.lastIndexOf(priceArray[i]);
if(priceArray[i]==-1)
continue;
while(index!=lastIndex){
sameIndex.push(lastIndex);
priceArray[lastIndex]=-1;
lastIndex=priceArray.lastIndexOf(priceArray[i]);
}
sameIndex.push(i);
sameIndex.push(priceArray[i]);
}
var finalStr="";
sameIndex.forEach(function(item){
if(typeof item=="number"){
finalStr+="vip"+vipArray[item]+"-"
}else{
finalStr+=item+","
}
})
finalStr=finalStr.substring(0,finalStr.length-1);
var finalArray=finalStr.split(',').reverse();
console.log(sameIndex);
console.log(finalArray);
var finalStr2="";
finalArray.forEach(function(item){
var arr=item.split('-');
if(arr.length==2){
finalStr2+=arr[0]+":"+arr[1]+",";
}else if(arr.length==3){
finalStr2+=arr[0]+"-"+arr[1]+":"+arr[2]+",";
}else if(arr.length>3){
finalStr2+=arr[0]+"-"+arr[arr.length-2]+":"+arr[arr.length-1]+",";
}
})
finalStr2=finalStr2.substring(0,finalStr2.length-1);
document.body.innerHTML=finalStr2
//结果:vip2-vip4:445362,vip5-vip6:666,vip7:669
这篇博客展示了如何使用JavaScript处理数组,通过遍历和比较元素找到相同值的索引,将它们归类并形成新的字符串结构。代码示例中,作者创建了两个数组`priceArray`和`vipArray`,并通过`forEach`循环查找相同价格的元素,最后输出了归类后的结果,如'vip2-vip4:445362, vip5-vip6:666, vip7:669'。"
114808148,10625688,Python代码实现文件归类,"['Python编程', '文件操作', '编程技巧', '初学者教程']
5573

被折叠的 条评论
为什么被折叠?



