بیان نکات و تجربیات از حل تمرین این جلسه با 3 روش مختلف

پرسیده شده
فعالیت 966 روز پیش
دیده شده 522 بار
0

با سلام و تشکر از استاد دادخواه بابت تدریس خوبتان.

در زیر کد های مربوط به حل تمرین به همراه نکاتی آورده شده است.

 

1- حل با استفاده از ساختار تصمیم if / else / else if

 

نکته1: برای حل تمرین از این روش باید از شرط های تو در تو (if های تو در تو) استفاده کرد. طبق تجربه من برای اینکه در استفاده از شرط ها تو در تو کیج نشویم بهتر است شرط ها را از بالاترین شرط بنویسیم. به این صورت که ابتدا ساختار شرط اول را کامل کنیم و سپس وارد ساختار شرط دوم شویم.

نکته 2: برای اینکه کاربر دکمه cancel را بزند از حالت window.alert خارج شویم باید از کلمه کلیدی null استفاده کنیم. (لینک مقالهstack overflow )

 

کد های مربوط به روش اول:

        // Do practise white if/else

        var user = prompt("Who's there? ");
        if (user == "Admin"){
            var password = prompt("Pleas inter your password ");
            if (password == "TheMaster"){
                alert("Welcome! ");
            }
            else if (password == null){

            }
            else{
                alert("Wrong password ");
            }
        }
        else if (user == null){

        }
        else{
            alert("I don't know you")
        }

2- حل تمرین با استفاده از ساختار تصمیم ternary if (:?)

 

نکته3: برای اینکه به موتور جاوااسکریپت بفهمانیم که در صورت زدن دکمه cancel هیچ پیغامی نشان نده باید از علامت [ ] استفاده کنیم.

نکته4: نمی توان از کلمه کلیدی var در این ساختار استفاده کرد برای همین فقط عبارت password نوشته می شود.

نکته5: این روش کوتاه ترین روش در میان این 3 راه حل است. همچنین برای استفاده از آن باید 2 بار پشت سر هم از ternary if استفاده کنیم.

 

کد های مربوط به روش دوم:

        // Do practise white ternary if (?:)
        var user = prompt("Who's there? ");    
        (user == "Admin") ? 
        password = prompt("Pleas inter your password ") :
        (user == null) ? []: alert("I don't know you");
        
        (password == "TheMaster") ? alert("Welcome! ") :
        (password == null) ? [] : alert("Wrong password ");

3- حل تمرین با استفاده از ساختار تصمیم Switch

نکته6: در این روش نیز مانند روش if باید از switch های تو در تو  استفاده کرد.

نکته7: برای اینکه به موتور جاوااسکریپت بفهمانیم که در صورت زدن دکمه cancel هیچ پیغامی نشان نده باید از فضای خالی استفاده کنیم.

 

کد های مربوط به روش سوم:

        // Do practise white switch
        var user = prompt("Who's there? ");
        switch (user) {
            case "Admin":
                var password = prompt("Pleas inter your password ");
                switch (password) {
                    case "TheMaster":
                        alert("Welcome! ");
                        break;
                    case null:

                        break;
                    default:
                        alert("Wrong password ");
                        break;
                }
                break;
            case null:
                
                break;
            default:
                alert("I don't know you");
                break;
        }

 

فایل پیوست