質問するログイン新規登録

回答編集履歴

1

ソート順指定の実装例を追記

2017/09/30 17:07

投稿

退会済みユーザー
answer CHANGED
@@ -26,4 +26,33 @@
26
26
  1: number
27
27
  true: boolean
28
28
  */
29
+ ```
30
+
31
+ 追記:
32
+ 更新頂いたソート条件を実装すると下記のようになるでしょうか。
33
+ もっとすっきりした書き方もあるかもしれません。
34
+ ```javascript
35
+ function compare(a, b) {
36
+ if (typeof(a) == typeof(b)) {
37
+ if (a < b) {
38
+ return -1;
39
+ } else {
40
+ return 1;
41
+ }
42
+ } else {
43
+ if (typeof(a) < typeof(b)) {
44
+ return -1;
45
+ } else {
46
+ return 1;
47
+ }
48
+ }
49
+ }
50
+
51
+ var arr = ["One", 1, true];
52
+ arr.sort(compare);
53
+ // => [true, 1, "One"]
54
+
55
+ arr = ["One", 1, true, false, "Two", 3, 2, "Three"];
56
+ arr.sort(compare);
57
+ // => [false, true, 1, 2, 3, "One", "Three", "Two"]
29
58
  ```