JavaScript取得三个数中的最大值

写一个函数,功能可以实现取得三个数中的最大值。

方法:1:利用数组,对数组中的元素进行冒泡排序(由小到大),则数组的最后一个元素就是最大值,将最大值return即可。代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>数组冒泡排序获得最大值</title>
    <script>
        //声明函数getMax
        function getMax(num1, num2, num3) {
            var num1 = parseFloat(prompt('请输入要比较的第一个值:'));
            var num2 = parseFloat(prompt('请输入要比较的第二个值:'));
            var num3 = parseFloat(prompt('请输入要比较的第三个值:'));
            var arr = [num1, num2, num3];
            //将数组冒泡排序由小至大,函数返回结果时,直接返回数组中的最后一个值,就是所要的最大值。
            for (var i = 0; i < arr.length - 1; i++) {
                for (var j = 0; j < arr.length - 1 - i; j++) {
                    if (arr[j] > arr[j + 1]) {
                        var temp = 0;
                        temp = arr[j];
                        arr[j] = arr[j + 1];
                        arr[j + 1] = temp;
                    }
                }
            }
            return '最大值为:' + arr[arr.length - 1];
        }
        //调用函数,并在网页上弹出弹框,显示最终比较结果
        alert(getMax());
    </script>
</head>
<body>
</body>
</html>

方法2:利用if...else...if语句判断比较。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>利用if...else..if语句</title>
    <script>
        function getMax() {
            var num1 = parseFloat(prompt('请输入要比较的第一个值:'));
            var num2 = parseFloat(prompt('请输入要比较的第二个值:'));
            var num3 = parseFloat(prompt('请输入要比较的第三个值:'));
            var max = 0;
            if (num1 > num2) {
                //max此时为num1与num2中的最大值
                max = num1;
                if (num1 > num3) {
                    return max;
                } else {
                    return num3;
                }
            } else {
                max = num2;
                if (num2 > num3) {
                    return max;
                } else {
                    return num3;
                }
            }
        }
        alert(getMax());
    </script>
</head>
<body>
</body>
</html>

方法3:利用三元表达式。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>利用三元表达式</title>
    <script>
        function getMax() {
            var num1 = parseFloat(prompt('请输入要比较的第一个数:'));
            var num2 = parseFloat(prompt('请输入要比较的第二个数:'));
            var num3 = parseFloat(prompt('请输入要比较的第三个数:'));
            var max = 0;
            //num1大于num2吗?若大于,则max=num1,;否则,max=num2.
            num1 > num2 ? max = num1 : max = num2;
            //max大于num3吗?若大于,则max=max;否则,max=num3.
            max > num3 ? max = max : max = num3;
            //结果返回max
            return max;
        }
        alert(getMax());
    </script>
</head>
<body>
</body>
</html>

推荐阅读更多精彩内容