目次
数字の配列をソートする方法
以下のサンプルのように、sort関数を使用してソートを行うことができます。
const numArrayData = [1, 3, 2]
numArrayData.sort((a, b) => {
return b - a;
});
console.log(numArrayData); // [3, 2, 1]
文字列の配列をソートする方法
以下のサンプルのように、sort関数を使用してソートを行うことができます。
const strArrayData = ["a", "b", "c"]
strArrayData.sort((a, b) => {
if (a > b){
return -1;
} else {
return 1;
}
});
console.log(strArrayData); // ['c', 'b', 'a']
数字でも文字列でもソートする方法
以下の関数を用意して、その関数をsort内で呼び出すことで、ソートすることが可能です。
const arraySortAct = (a, b) => {
if (!isNaN(a) && !isNaN(b)) {
return b - a;
} else {
if (a > b) {
return -1;
} else {
return 1;
}
}
};
数字配列の場合、以下の様に呼び出すことが可能です。
const arraySortAct = (a, b) => {
if (!isNaN(a) && !isNaN(b)) {
return b - a;
} else {
if (a > b) {
return -1;
} else {
return 1;
}
}
};
const num2ArrayData = [1, 3, 2]
num2ArrayData.sort((a, b) => arraySortAct(a, b));
console.log(num2ArrayData); // [3, 2, 1]
文字列配列の場合、以下の様に呼び出すことが可能です。
const arraySortAct = (a, b) => {
if (!isNaN(a) && !isNaN(b)) {
return b - a;
} else {
if (a > b) {
return -1;
} else {
return 1;
}
}
};
const str2ArrayData = ["a", "b", "c"]
str2ArrayData.sort((a, b) => arraySortAct(a, b));
console.log(str2ArrayData); // ['c', 'b', 'a']
上記の全サンプルは以下です。
const arraySortAct = (a, b) => {
if (!isNaN(a) && !isNaN(b)) {
return b - a;
} else {
if (a > b) {
return -1;
} else {
return 1;
}
}
};
const str2ArrayData = ["a", "b", "c"]
str2ArrayData.sort((a, b) => arraySortAct(a, b));
console.log(str2ArrayData); // ['c', 'b', 'a']
const num2ArrayData = [1, 3, 2]
num2ArrayData.sort((a, b) => arraySortAct(a, b));
console.log(num2ArrayData); // [3, 2, 1]