var i="q=brand:GOOD_EARTH,LIPTON:blend:Black,Herbal:varieties:Tea&layoutStatus=grid&show=Page&sort=popular-all";
var x=0;
var s=[], arr=[];
var temp={};
var myarray=["blend", "varieties", "brand"];
s=i.split('q=')[1].split('&')[0].split(':');
console.log(s);
for(x=0;x<s.length;x=x+2){
temp[s[x]] = s[x+1];
arr[x]= s[x];
}
console.log(temp);
//样本值
temp = {
blend:"Black,Herbal"
brand:"GOOD_EARTH,LIPTON"
varieties:"Tea" }
s= [0:"brand"
1:"GOOD_EARTH,LIPTON"
2:"blend"
3:"Black,Herbal"
4:"varieties"
5:"Tea"]
arr=[
0:"brand"
2:"blend"
4:"varieties" ]
以上是s和temp的示例值。我需要在指定的“myarray”顺序中对“arr”进行排序。我怎么能这样做,任何人都可以帮助。提前谢谢大家。
答案 0 :(得分:-1)
您需要通过提供以下值来使用.sort()
:
blend: 1
varieties: 2
brand: 3
sort
回调函数占用两个参数。当前和下一个。您需要将值替换为current和next。但就你目前的例子而言,这是不可能的。或者我可能不清楚我期望实现的目标。
我不回答这个问题。所以,随时修改,评论,meh。