2017-10-18 11 views
-4
var cars = ["a", "c", "s", "r"]; 
function mysort() { 

document.getElementById("show_cars").innerHTML = cars;} 

私は、私の出力結果は、cでの並べ替えであると思い、R、これを行う方法をjavascriptやその他の方法でカスタムソート機能を使用する方法は?

//output 
c,a,r,s 

anyideaはね???どうもありがとうございます

+6

したいソートの背後にあるロジックは何ですか? –

+2

*私の結果はc、a、r、sで並べ替えることを願っています*なぜですか?結果があらかじめ定義されている場合は、どうして並べ替えの問題が発生するのでしょうか? – gurvinder372

+0

おそらくXYの問題..?配列内の文字から "cars"という言葉を作ることができれば、その並べ替えが行こうとしていることだけを想定して検出する必要があります。 – Teemu

答えて

0

1つのオブジェクトを作成して各文字の順序を定義し、そのオブジェクトでソートできます。

var cars = ["a", "c", "r", "s"]; 
 
var s = {c: 1, a: 2, r: 3, s: 4} 
 
var r = cars.sort((a, b) => s[a] - s[b]).join(',') 
 

 
console.log(r)

-1

独自のカスタム関数を実装し、配列の並べ替え機能に渡す必要があります。 カスタム関数には、配列の要素を順序付けるための条件が必要です。

var cars = ["a", "c", "r", "s"]; 
cars.sort(function(a, b) { 
    //Return the result of comparing your a and b elements. 
    return result; 
}); 
console.log(cars.join("")); 
関連する問題