2024-04-22|閱讀時間 ‧ 約 23 分鐘

認識 JavaScript (九)

    ※ 何謂巢狀迴圈(NESTD LOOP):

    指的是一個迴圈內包含另一個迴圈的結構。在程式設計中,這種結構常用於需要進行多層次迭代的場合,例如處理多維數組、逐行逐列處理表格資料等。

    ※ 例子:九九乘法表

    raw-image

    說明:

    1. 外層迴圈:for (let i = 1; i <= 9; i = i + 1) 這個迴圈控制乘法表的第一個因數(行),從 1 到 9。
    2. 內層迴圈:for (let j = 1; j <= 9; j = j + 1) 這個迴圈控制乘法表的第二個因數(列),也從 1 到 9。
    3. 使用 模板字串 (Template Strings):使用反引號 ` 來定義,將變量和表達式放在 ${} 中。
    4. ${i} x ${j} = ? 表示將 ij 的值動態插入到字串中。
    5. 當內層迴圈完成一次循環,就會打印出 i 和 j 當前的值,以及乘法的格式。
    6. 當內層迴圈的 j 循環完一輪(從 1 到 9),外層迴圈的 i 增加 1,然後內層迴圈再次從 1 開始,直到 i 也循環完畢。

    ※ 例子:會員判斷

    條件要求:

    • 未登入印出「請登入」
    • 登入印出「已登入」
    • 管理者印出「Admin」
    • VIP會員印出「歡迎光臨」
    • 一般會員印出「Hello」
    • 只要是會員,還有點數則印出「還有xxx點」
    • 只要是會員,沒有點數則印出「請買點」
    //參數宣告​
    const isLogIn = true //本身是布林值
    const role = 'member' //admin, VIP, member
    const points = 5

    //由於判斷式也是true/false,可以省略isLogIn===true,直接寫成(isLogIn)
    //使用巢狀迴圈

    if (isLogIn) {
    //步驟一:確認是否登入
    console.log('已登入')
    //步驟二:判斷管理員身分
    if (role === 'admin') {
    console.log('Admin')
    } else {
    //步驟三:結果不是管理員身分-->是會員
    if (role === 'vip') {
    console.log('歡迎光臨')
    } else if (role === 'member') {
    console.log('Hello')
    } else {
    console.log('未知角色', role)
    }
    //步驟四:判斷會員點數
    if (points > 0) {
    console.log(`還有${points}`)
    } else {
    console.log('請買點')
    }
    }
    } else {
    console.log('請登入')
    }



    分享至
    成為作者繼續創作的動力吧!
    © 2024 vocus All rights reserved.