JavaScriptで数値の重みに従って並べ替える
数値の重みは、その数値の桁の合計です。例-
The weight of 100 is 1 The weight of 22 is 4 The weight of 99 is 18 The weight of 123 is 6
数値の配列を受け取るJavaScript関数を作成する必要があります。関数は、重みの昇順で数値を並べ替える必要があり、2つの数値が同じ重みを持っている場合は、実際の昇順で配置する必要があります。
たとえば-
50と23の重みは同じであるため、実際の昇順を維持するには、23を50の前に配置する必要があります(重みが等しい場合のみ)
例
このためのコードは-
になりますconst arr = [2, 1, 100, 56, 78, 3, 66, 99, 200, 46];
const calculateWeight = (num, sum = 0) => {
if(num){
return calculateWeight(Math.floor(num / 10), sum + (num % 10));
};
return sum;
};
const sorter = (a, b) => {
return calculateWeight(a) − calculateWeight(b) || a − b;
}
arr.sort(sorter);
console.log(arr); 出力
そして、コンソールの出力は-
になります[ 1, 100, 2, 200, 3, 46, 56, 66, 78, 99 ]
-
Math.min()関数JavaScript
Mathオブジェクトのmin()関数は複数の数値を受け入れ、それらの中で最大の数値を返します。 この関数に単一の数値を渡すと、同じ数値が返されます また、引数を渡さないと、無限大が返されます。 構文 その構文は次のとおりです Math.min(48, 148, 3654); 例 <html> <head> <title>JavaScript Example</title> </head> <body> <script type="text/javas
-
JavaScript番号の例
以下はJavaScriptの数字の例です- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>Document</title> <style> body