もしかしたら、あなたは JavaScript で配列ソートを使用しているかもしれません。
それが正しい結果をもたらすと常に信じていたのかもしれません。
少なくとも私は、ある日次のコードを見るまではそう思っていました:
[5,10,1].sort();
おそらく結果は少し予想外です。結果は次のようになります。
[1, 10,5]
慎重に調査した結果、デフォルトのソート方法では整数データによるソートではなく、文字列のマッチングが使用されることがわかりました。
言い換えると、上記のコードでエラーが発生するのは 10 分の 1 です。
もちろん、sort メソッドにコールバック関数を渡すこともできます。
[5,10,1].sort (function( x,y){
if(x>y) {return 1;
}else{
return -1
}
}
); 🎜>
このようにして、期待した結果が得られます。
何かを偶然見つけた場合は、忘れないように記録してください。