-3

私は簡単なJS演習を見てきましたが、この質問へのアプローチ方法を教えていただければ幸いです。さらに良いことに、私が検討できる解決策を提供していただければ幸いです。感謝します。

編集:使用中の関数の簡単な実例もいただければ幸いです。

4

5 に答える 5

5
function whatDidYouTry() {
    return Math.max.apply(null, arguments);
}
于 2012-06-05T23:56:58.517 に答える
2
function get_max(num1, num2, num3)
{
    var max = Math.max(num1, num2, num3);
    return max;
}

alert(get_max(20,3,5)); // 20

デモ。 </ p>

于 2012-06-06T00:03:20.743 に答える
2

関数がすでに存在するため、新しい関数を作成する必要はありません。

Math.max(num1, num2, num3);

新しい関数の作成は、付加価値のない余分なオーバーヘッドです。

于 2012-06-06T00:11:37.893 に答える
1

それにひびを入れます。

function threeNumberSort(a,b,c) {
    if (a<b) {
        if (a<c) {
            if (b<c) {
                console.log(a + ", then " + b + ", then " + c);
            } else {
                console.log (a + ", then " + c + ", then " + b);
            }
        } else {
            console.log (c + ", then " + a + ", then " + b);
        }
    } else {
        if (b<c) {
            if (a<c) {
               console.log (b + ", then " + a + ", then " + c); 
            } else {
                console.log (b + ", then " + c + ", then " + a);
            }
        } else {
            console.log (c + ", then " + b + ", then " + a);
        }
    }
}

threeNumberSort(1456,215,12488855);

これはコンソールに印刷されます:

215, then 1456, then 12488855

このページで見つけたアルゴリズムを使用しました。より効率的なものがおそらくそこに存在します。

于 2012-06-06T00:17:06.183 に答える
0

これは、関数やifステートメントを使用して思いついた手動コードです。

function maxOfThree(a, b, c) {
    if ((a >= b) && (a >= c)) { 
        return a;
    } else if ((b >= a) && (b >= c)) {
        return b;
    } else {
        return c;
    }
}

console.log(maxOfThree(343,35124,42));
于 2014-12-11T03:08:16.563 に答える