用数组对象自带排序方法可以这样:m.sort(function(a,b){return b.count.length-a.count.length;});

解决方案 »

  1.   

    楼上的可能理解错了,他是要根据count来排序value,这是两个不同的数组
    我给个解决方法,参考下吧m = new Array(3); 
    m["value"] = new Array('a','b','c','aa'); 
    m["count"] = new Array(1,3,2,5); 
    m["count_copy"]=new Array();
    for(var i=0,j=m["count"].length;i<j;i++)
    m["count_copy"].push('&'+m["count"][i]+'&'+m["value"][i]);//把你的排序键合并到值上去
    m["count_copy"].sort();alert(m["value"].join());//未排序
    alert(m["count_copy"].join());//排序未处理
    alert(m["count_copy"].join().replace(/&[^&]+&/g,''));//排序并去掉排序键