js基础--选择与循环

结构分类:顺序结构;选择结构;循环结构;

一、if选择结构

prompt('请输入:' , 20); prompt 里面的第一个内容表示提示语,第二个内容是弹出框里的默认值。
prompt 方法执行完之后,会把用户输入内容返回给后台;
tips :只要是输入,返回的数据类型都为 字符串类型。即 typeof(prompt('')) == string ;
if基本结构:
语法:if(判断条件) {
                //javascript 语句;
            }else if(判断语句) {
                //javascript 语句;
            }else {
                //javascript 语句;
            }
/* 编写函数,实现使用prompt输入两个数和运算符号,并计算两个数的操作结果 */
<script>
        let num1 = parseFloat(prompt('请输入第一个数:'));
        let num2 = parseFloat(prompt('请输入第二个数:'));
        let sym = prompt('请输入运算符号:');
        if (sym == '+') {
            alert(num1 + '+' + num2 + '=' + (num1 + num2));
        } else if (sym == '-') {
            alert(num1 + '-' + num2 + '=' + (num1 - num2));
        } else if (sym == '*') {
            alert(num1 + '*' + num2 + '=' + (num1 * num2));
        } else if (sym == '/') {
            if (num2 != 0) {
                alert(num1 + '/' + num2 + '=' + (num1 / num2));
            } else {
                alert('除数不能为0');
            }
        } else {
            alert('其他运算符我不研究,你别问啦');
        }
</script>

二、switch 选择结构

语法:switch (表达式){
            case 常量1 :
            //javascript语句;
            break;
            case 常量2 :
            //javascript语句;
            break;
            .....
            default:
            //javascript语句;
            break;
            }
let num1 = parseFloat(prompt('请输入第一个数:'));
        let num2 = parseFloat(prompt('请输入第二个数:'));
        let sym = prompt('请输入运算符号:');
        switch (sym) {
            case '+':
                alert(num1 + '+' + num2 + '=' + (num1 + num2));
                break;
            case '-':
                alert(num1 + '-' + num2 + '=' + (num1 - num2));
                break;
            case '*':
                alert(num1 + '*' + num2 + '=' + (num1 * num2));
                break;
            case '/':
                if (num2 != 0) {
                    alert(num1 + '/' + num2 + '=' + (num1 / num2));
                } else {
                    alert('除数不能为0');
                }
                break;
            default:
                alert('其他运算符我不懂,你别问啦');
                break;
        }

如果case 后不加 break;执行完case语句后,会出现穿透现象;
如果几个case(case :1;case 2; case:3;)所执行的语句是相同的,简单说就是满足 case :1;case 2; case:3;的时候都需要执行相同的javascript语句时候,可以用到穿透,可以减少代码冗余。
<script>
        for (let i = 1; i < 10; i++) {
            let mouth = parseInt(prompt('请输入月份:'));
            switch (mouth) {
                case 2:
                case 3:
                case 4:
                    alert('春季');
                    break;
                case 5:
                case 6:
                case 7:
                    alert('夏季');
                    break;
                case 8:
                case 9:
                case 10:
                    alert('秋季');
                    break;
                case 11:
                case 12:
                case 1:
                    alert('冬季');
                    break;
                default:
                    alert('输入有误');
            }
        }
</script>

循环结构

一、for 循环

语法:for(初始值设置;循环条件;循环迭代)
           {
            //循环执行语句;
            }
for循环的执行顺序为:
  1. 初始值;
  2. 循环条件判断;
  3. 执行循环语句;
  4. 循环迭代。
/* 计算0--200(包括)内所以偶数和 */
<script>
        //第一种
        /* var sum = 0;
        for (var i = 0; i <= 200; i++) {
            if (i % 2 == 0) {
                sum = sum + i;
            }
        }
        document.write(sum); */
        
        //第二种
        var sum = 0;
        for (var i = 2; i <= 100; i = i + 2) {
            // sum = sum + i;
            sum += i;
        }
        document.write(sum);
</script>

二、while 循环

语法:while (循环条件)
          {//循环语句;
            //循环迭代;(没有循环迭代循环会进入死循环)
           }
/* 计算0--200(包括)内所以偶数和 */
/* 计算0--200(包括)内所以偶数和 */
<script>
        //第一种
        /* var sum = 0;
        var i = 0;
        while (i <= 200) {
            if (i % 2 == 0) {
                sum += i;
            }
            i++;
        }
        document.write(sum); */
        
        //第二种
        var sum = 0;
        var i = 0;
        while (i <= 200) {
            sum += i;
            i += 2;
        }
        document.write(sum);
</script>

三、do-while 循环

语法:do{
                //循环语句;
                //迭代语句;
            }while(循环条件)
  • do-while 的特点是先循环再判断;
  • while 循环的特点是先判断再进去循环;
/* 计算0--200(包括)内所以偶数和 */
<script>
        var sum = 0;
        var i = 0;
        do {
            if (i % 2 == 0) {
                sum += i;
            }
            i++;
        } while (i <= 200)
        document.write(sum);
    </script>

四、for-in 循环

数组是具有相同数据类型的一个或者多个值的集合;
语法:var 数组名 = ["前端","java","php"]
常用于对数组或者对象的属性进行循环操作
语法:for(变量 in 对象){
                //循环语句
            }
<script>
        var arr = ["前端", "大数据", "java", "运维"]
        // for-in 循环中的 变量 i 是字符串类型
        for (var i in arr) {
            if (arr[i] == "前端") {
                arr[i] += "yyds";
            } else {
                arr[i] += "omg";
            }
        }
        document.write(arr);
</script>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值