やりたいこと
- 以下のポケモン配列を、全国図鑑順に並び替えたい
- フシギダネ → ヒトカゲ → ゼニガメ → ピカチュウの順が正解
const pokemons = ["ヒトカゲ", "ゼニガメ", "フシギダネ", "ピカチュウ"];
NG
- とりあえず
sort()
してみた
- Unicode コードポイント順に並んでいるらしい
- 今回の対象はカタカナだけなので、結果50音順で並んだ
const pokemons = ["ヒトカゲ", "ゼニガメ", "フシギダネ", "ピカチュウ"];
pokemons.sort();
console.log(pokemons);
OK
const orderList = ["フシギダネ", "フシギソウ", "フシギバナ", "ヒトカゲ", "リザード", "リザードン", "ゼニガメ", "カメール", "カメックス", "ピカチュウ", "ライチュウ"];
const pokemons = ["ヒトカゲ", "ゼニガメ", "フシギダネ", "ピカチュウ"];
pokemons.sort((a, b) =>
orderList.indexOf(a) - orderList.indexOf(b)
);
console.log(pokemons);
参考URL