冒泡排序與作用域

<!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>
    </head>
    <body>
        <script>
            window.onload = function() {
                // 冒泡排序
                var array = [0, 5, 7, 3, 2, 9, 8, 5, 4];
                for (let i = 0; i < array.length - 1; i++) {
                    for (let j = 0; j < array.length - 1 - i; j++) {
                        if (array[j] > array[j + 1]) {
                            [array[j], array[j + 1]] = [array[j + 1], array[j]];
                        }
                    }
                }
                console.log(array + "");
                array = [0, 5, 7, 3, 2, 9, 8, 5, 4];
                console.log(
                    array.sort((a, b) => {
                        return a - b;
                    }) + ""
                );

                // 作用域
                function fun() {
                    var a = 1;
                }
                fun();
                try {
                    console.log(a); // ReferenceError: a is not defined
                } catch (error) {
                    console.error(error);
                }

                function fun() {
                    b = 1; // 提升到全局
                }
                fun();
                console.log(b); // 1

                var a1 = 1;
                function fun1() {
                    console.log(a1); // undefined (預解析 變量提升)
                    var a1 = 2;
                    console.log(a1); // 2
                }
                fun1();
                console.log(a1); // 1  輸出全局變量

                var s = 10;
                function f() {
                    var b = 2 * s;
                    var s = 20;
                    var c = s + 1;
                    console.log(b); // 2*undefined NaN
                    console.log(c); // 21
                }
                f();
            };
        </script>
    </body>
</html>

發佈了20 篇原創文章 · 獲贊 10 · 訪問量 3470
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章