重装js第二天

作业

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    

    <script>
        // 取整        parseInt(变量)
            // var num = parseInt(23.567);
            // console.log(num);


        // 保留几位小数    变量.toFixed(几位小数)
            // var num1 = 23.4530237.toFixed(2);
            // console.log(num1);




        // 1.为抵抗洪水,战士连续作战89小时,编程计算共多少天零多少小时?
            // // 总共作战的小时
            // // var zong = 89;
            // var zong = prompt('请输入战士连续作战的小时数');
            // console.log(zong);

            // // 计算 整天数
            // var day = parseInt(zong/24);
            // console.log(day);

            // // 计算 零小时数
            // var hours = zong%24;
            // console.log(hours);

            // document.write('战士一共连续作战了'+day+'天'+hours+'小时');




        // 2. 小明要到美国旅游,可是那里的温度是以华氏度为单位记录的。
        // 它需要一个程序将华氏温度(80度)转换为摄氏度,并以华氏度和摄氏度为单位分别显示该温度。
        // 提示:摄氏度与华氏度的转换公式为:摄氏度 = 5/9*(华氏度-32)      
        // 结果保留3位小数     num.toFixed(3)
        
        // // 已知的华氏度温度
        // // var hsd = 80;
        // var hsd = prompt('请输入当前的华氏度温度');
        // console.log(hsd);

        // // 根据 公式 计算 摄氏度温度
        // // var ssd = (5/9*(hsd-32)).toFixed(3);

        // var ssd = 5/9*(hsd-32);
        // // 一个等号是 先执行右侧,在将 右侧的结果 赋值给 左侧的变量
        // ssd = ssd.toFixed(3);
        // console.log(ssd);

        // document.write("华氏度温度为"+hsd+",摄氏度温度为"+ssd);



        
        // 3、输入一个五位数,通过算数运算,分别输出 个十百千万位;
        // // var n1 = 91827;   // 11223   40987
        // var n1 = prompt('请输入一个五位数的数字');
        // console.log(n1)

        // var w = parseInt(n1/10000);
        // console.log(w);
        // var q = parseInt(n1/1000)%10;
        // console.log(q);
        // var b = parseInt(n1/100)%10;
        // console.log(b);
        // var s = parseInt(n1/10)%10;
        // console.log(s);
        // var g = n1%10;
        // console.log(g);

        // document.write(n1+"这个五位数的万位是"+w+"千位是"+q+"百位是"+b+"十位是"+s+"个位是"+g);
    
        
    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    


    <script>
        // 赋值运算符
            // 作用就是 给 变量 赋值
            // 在执行时 先执行 赋值运算符的右侧,后执行 左侧
                // 对于 赋值运算符的右侧 还是 从左往右执行的
            // 要求:赋值运算符的左侧必须是一个变量
            // =  +=  -=  *=  /=  %=

        // =  将 等号右侧的值 赋值给 左侧的变量
        var a = 111;
        console.log(a);
        var b = 222 + 333;
        console.log(b);

        // +=  -=  *=  /=  %=  是 使用变量自身参与运算,将结果重新赋值给变量自身

            // +=   结合 算数运算符的加号 和 赋值运算符的等号
            a += b;  // 等价于 a = a+b
            console.log(a);  // a = 111 + 555 = 666

            b += 'abc';
            console.log(b);  // '555abc'


            // -=   结合 算数运算符的减号 和 赋值运算符的等号
            var n1 = 22;  
            n1 -= 11;  // 等价于 n1 = n1-11
            console.log(n1);  // 11


            // *=   结合 算数运算符的乘号 和 赋值运算符的等号
            var n2 = 16;  
            n2 *= 3;  // 等价于 n2 = n2*3
            console.log(n2);  // 48


            // /=   结合 算数运算符的除号 和 赋值运算符的等号
            var n3 = 66;  
            n3 /= 2;  // 等价于 n3 = n3/2
            console.log(n3);  // 33


            // %=   结合 算数运算符的取余号 和 赋值运算符的等号
            var n4 = 66;  
            n4 %= 5;  // 等价于 n4 = n4/5
            console.log(n4);  // 1


        // 注意:这几个输出语句无法赋值给变量使用
            // console.log()
            // document.wirte();
            // alert()

        // 只有这个一个可以
        var x1 = prompt();
    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    

    <script>
        // 一元运算符 --- 自增自减运算符
            // ++  有 先加加 和 后加加
            // --  有 先减减 和 后减减


        // 变量++   --- 后加加 --- 先执行自身,后加1
        var a = 5;
        console.log(a);  // 5 

        var b = a++;
        console.log(b);  // 5
        console.log(a);  // 6

        var c = 10;
        console.log(c);  // 10;
        console.log(c++);  // 10    c++ 等价于 c = c+1,但是+1的操作在 这条语句执行完后在执行
        console.log(c++);  // 11
        console.log(c++);  // 12
        console.log(c);  // 13
        console.log(c);  // 13

        var n1 = 7;
        var sum1 = n1++ + n1++ + n1 - n1++ + n1++;
                // 7    + 8    + 9  - 9    + 10
        console.log(n1);  // 11
        console.log(sum1);  // 25

        console.log('-----------------华丽的分割线--------------');
        // ++变量   --- 先加加 --- 先加1,再执行
        var d = 5;
        console.log(++d);  // 6
        console.log(++d);  // 7
        console.log(d);  // 7

        console.log(d++);  // 7
        console.log(++d);  // 9

        var n2 = 12;
        var sum2 = n2++ - ++n2 + ++n2 + n2 + n2++ - ++n2;
                // 12   - 14   + 15   + 15 + 15   - 17
        console.log(n2);  // 17
        console.log(sum2);  // 26


        console.log('-----------------华丽的分割线--------------');

        // 变量--
        // --变量

        var n3 = 9;
        var sum3 = n3-- + n3++ + ++n3 - n3-- + --n3 - n3++ + n3++;
                // 9    + 8    + 10   - 10   + 8    - 8    + 9
        console.log(n3);  // 10
        console.log(sum3);  // 26




        // 实现两个变量的值交换
            var num1 = 52;
            var num2 = 21;
            console.log(num1,num2);  // 52 21

            // 经过一系列操作
            

            console.log(num1,num2);  // 21 52


        // 自己定义 一个公式,练习 自增自减运算符 的 结果
    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    

    <script>
        // 一元运算符 --- 自增自减运算符
            // ++  有 先加加 和 后加加
            // --  有 先减减 和 后减减


        // 变量++   --- 后加加 --- 先执行自身,后加1
        var a = 5;
        console.log(a);  // 5 

        var b = a++;
        console.log(b);  // 5
        console.log(a);  // 6

        var c = 10;
        console.log(c);  // 10;
        console.log(c++);  // 10    c++ 等价于 c = c+1,但是+1的操作在 这条语句执行完后在执行
        console.log(c++);  // 11
        console.log(c++);  // 12
        console.log(c);  // 13
        console.log(c);  // 13

        var n1 = 7;
        var sum1 = n1++ + n1++ + n1 - n1++ + n1++;
                // 7    + 8    + 9  - 9    + 10
        console.log(n1);  // 11
        console.log(sum1);  // 25

        console.log('-----------------华丽的分割线--------------');
        // ++变量   --- 先加加 --- 先加1,再执行
        var d = 5;
        console.log(++d);  // 6
        console.log(++d);  // 7
        console.log(d);  // 7

        console.log(d++);  // 7
        console.log(++d);  // 9

        var n2 = 12;
        var sum2 = n2++ - ++n2 + ++n2 + n2 + n2++ - ++n2;
                // 12   - 14   + 15   + 15 + 15   - 17
        console.log(n2);  // 17
        console.log(sum2);  // 26


        console.log('-----------------华丽的分割线--------------');

        // 变量--
        // --变量

        var n3 = 9;
        var sum3 = n3-- + n3++ + ++n3 - n3-- + --n3 - n3++ + n3++;
                // 9    + 8    + 10   - 10   + 8    - 8    + 9
        console.log(n3);  // 10
        console.log(sum3);  // 26




        // 实现两个变量的值交换
            var num1 = 52;
            var num2 = 21;
            console.log(num1,num2);  // 52 21

            // 经过一系列操作
            

            console.log(num1,num2);  // 21 52


        // 自己定义 一个公式,练习 自增自减运算符 的 结果
    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    


    <script>

        var num1 = 34;
        var num2 = 13;
        console.log(num1,num2);  // 34 13

        // 采用 第三方的方法 --- 针对 任何类型的值 都有效
        // var n = num1;  // 34
        // num1 = num2;   // 13
        // num2 = n;      // 34
        // console.log(num1,num2);  // 13 34


        // 采用 运算符的方法 --- 仅针对 值为 数字是 有效
        num1 = num1 + num2;  // 34+13   47
        num2 = num1 - num2;  // 47-13   34
        num1 = num1 - num2;  // 47-34   13
        console.log(num1,num2);  // 13 34



    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    


    <script>
        // 比较运算符(关系运算符)
            // >  <  >=  <=  ==  ===  !=  !==
            // 由比较运算符组成的表达式为:比较表达式。
            // 比较表达式返回的结果为 boolean类型的值,
            // 也就是说程序只要执行了比较操作得到结果只能是 true / false


        var num1 = 23;
        var num2 = 11;
        var num3 = 55;

        // > 大于
        var flag1 = num1>num2;  //  23>11   true
        console.log(flag1); // true
        console.log(num2>num3);  // 11>55    false
        console.log(10>10);  // false
        
        // < 小于
        console.log(num2<num3);  // true
        console.log(100<1);  // false

        // >=  大于等于
        console.log(num2>=10);  // true
        console.log(num2>=11);  // true
        console.log(9>=10);  // false
        
        // <=  小于等于
        console.log(num2<=10);  // false
        console.log(num2<=11);  // true
        console.log(9<=10);  // true

        console.log('-----------------华丽的分割线--------------');

        // ==  相等 --- 只比较值是否相等,忽略数据类型的比较
        console.log(10 == 10);  // true
        console.log(10 == '10');  // true
        console.log('abc'=='abc');  // true
        console.log(101 == '102');  // false


        // === 全等 --- 不仅比较值是否相等,而且也要比较数据类型是否相等
            // 只有 值 和 数据类型 都相等,最终的结果才会是 ture,就是全等
        console.log(10 === 10);  // true
        console.log(10 === '10');  // false
        console.log('abc'==='abc');  // true
        console.log(101 === '102');  // false

        // 注意:
            // 在js中
                // 一个等号是 赋值  --- 赋值时 一个等号的左侧必须是 变量
                // 两个等号是 相等  --- 值比较值是否相等,不比较数据类型
                // 三个等号是 全等  --- 值和数据类型都必须相等


        console.log('-----------------华丽的分割线--------------');

        // !=  不相等  --- 只比较值是否不相等,忽略数据类型的比较
        console.log(5 != 4);  // true
        console.log(5 != '4');  // true
        console.log(5 != '5');  // false
        

        // !==  不全等
        console.log(5 !== 4);  // true
        console.log(5 !== '4');  // true
        console.log(5 !== '5');  // true
        console.log(55 !== 55);  // false
        
    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    


    <script>
        // 逻辑运算符
            // && 与(并且)    
            // || 或(或者)   
            // ! 非(取反)
            // 逻辑运算符组成的表达式叫做 逻辑表达式 ,和逻辑表达式的结果也是 boolean


        // && 与(并且)
            // 同时判断多个条件表达式,如果多个条件表达式的结果都为true,最终的结果就是 true
            // 如果 至少有一个条件表达式的结果为false,最终的结果就是 false
        var num1 = 20;

        var flag1 = num1>10 && num1<50;  // true
                  // true       true
        console.log(flag1);  // true
        console.log(num1>30 && num1<50);  // false
                 //  false       ture
        console.log(num1<22 && num1>33);  // false
                 //   ture       false
        console.log(num1<10 && num1>33);  // false
                 //   flase       false

        
        console.log('-----------------华丽的分割线--------------');


        // || 或(或者)  
            // 同时判断多个条件表达式,只要至少有一个条件表达式的结果为true,最终的结果就是 true
            // 如果 多个条件表达式的结果都为flase,最终的结果就是 false
        var num2 = 20;
            
        var flag2 = num2>10 || num2<50;  // true
                  // true       true
        console.log(flag2);  // true
        console.log(num2>30 || num2<50);  // true
                 //  false       ture
        console.log(num2<22 || num2>33);  // true
                 //   ture       false
        console.log(num2<10 || num2>33);  // false
                 //   flase       false

        
        console.log('-----------------华丽的分割线--------------');


        // ! 非(取反)
            // 可以实现 将真的变假的,假的变整的
            // 得到的结果 是 布尔值
        
        var num3 = 10;
        console.log(num3);  // 10
        console.log(!num3);  // false

        var flag = false;
        console.log(flag);  // false;
        console.log(!flag);  // true;

        var str1 = 'hello';
        console.log(str1);  // 'hello'
        console.log(!str1);  // false

        var str2 = '';
        console.log(str2);  // ''
        console.log(!str2);  // true
        console.log(!!str2);  // flase
    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    

    <script>
        // 强制数据类型转换-显式转换

            // 将 其他类型的数据 转换成 string
                // String() 方法 将 其他类型的数据 转换成 string类型
                    var num1 = 911;
                    console.log(num1);  // 911
                    var s1 = String(num1);
                    console.log(s1);  // '911'

                    let s2 = String(true);
                    console.log(s2);  // 'true'
                    console.log(typeof s2);  // 'string'
                    
                    console.log(String(false));  // 'false'

                    var und;
                    console.log(und);  // undefined
                    console.log(String(und));  // 'undefined'

                    console.log(null);  // null
                    console.log(String(null));  // 'null'
                
                // toString() 方法 将 其他类型的数据 转换成 string类型 --- 了解
                    // 针对 null 和 undefined 无法实现 正确转换,会报错
                    var num2 = 666;
                    console.log(num2);  // 666
                    var ss1 = num2.toString();
                    console.log(ss1);  // '666'

                    console.log(true.toString());  // 'true'

                    // var und2;
                    // console.log(und2.toString());

                    // console.log(null.toString());  


            console.log('-----------------华丽的分割线--------------');


            // 将 其他类型的数据 转换成 number
                // Number() 方法 将 其他类型的数据 转换成 number类型
                    var str1 = '6699';
                    console.log(str1);  // '6699'
                    var n1 = Number(str1);
                    console.log(n1);  // 6699
                    console.log(typeof n1);  // 'number'
                    
                    var str2 = '22abc33';
                    console.log(str2);  // '22abc33'
                    var n2 = Number(str2);
                    console.log(n2);  // NaN
                    console.log(typeof n2);  // 'number'

                    console.log(Number(''));  // 0
                    // 注:将字符串转换成数字
                        // 纯数字的字符串转换成对应的数组
                        // 非纯数字的字符串转换成 NaN
                        // 空字符串转换成 0

                    console.log(Number(true));  // 1
                    console.log(Number(false));  // 0
                    // 注:布尔值转换成数字
                        // true 转换成 1
                        // false 转换成 0

                    var und3;
                    console.log(Number(und3));  // NaN

                    console.log(Number(null));  // 0


                // parseInt()  取整
                    // parseInt的执行逻辑
                        // 首先 查看 第一个字符是否为 数字
                            // 如果 是 则 继续向下一个字符 查看,直到非数字的字符开始将后面的字符全部去掉
                            // 如果 不是 则直接 返回 NaN 的结果
                    // 注:这个方法不是专门用来将其他类型的数据转换成数字的
                        // 只是 对应在执行过程中 会 有这个现象,方法自身有自身的执行逻辑
                    console.log(parseInt(99.9999));  // 99
                    console.log(parseInt('123.456'));  // 123
                    console.log(parseInt('666abc'));  // 666
                    console.log(parseInt('abc999'));  // NaN
                    console.log(parseInt(true));  // NaN
                    console.log(parseInt(false));  // NaN
                    console.log(parseInt(undefined));  // NaN
                    console.log(parseInt(null));  // NaN


                // parseFloat()   取浮点数(小数)
                    // parseFloat的执行逻辑
                        // 首先 查看 第一个字符是否为 数字
                            // 如果 是 则 继续向下一个字符 查看,可以认识一次小数点,再往后遇到非数字的值直接去掉
                            // 如果第一个就是 小数点,则直接 返回 NaN 的结果
                            // 如果 不是 则直接 返回 NaN 的结果
                    // 注:这个方法不是专门用来将其他类型的数据转换成数字的
                        // 只是 对应在执行过程中 会 有这个现象,方法自身有自身的执行逻辑
                    console.log(parseFloat(99.9999));  // 99.9999
                    console.log(parseFloat('123.456'));  // 123.456
                    console.log(parseFloat('666abc'));  // 666
                    console.log(parseFloat('666.89abc'));  // 666.89
                    console.log(parseFloat('abc999'));  // NaN
                    console.log(parseFloat(true));  // NaN
                    console.log(parseFloat(false));  // NaN
                    console.log(parseFloat(undefined));  // NaN
                    console.log(parseFloat(null));  // NaN

            
            console.log('-----------------华丽的分割线--------------');
            
            
            // 将 其他类型的数据 转换成 boolean
                // Boolean() 方法 将 其他类型的数据 转换成 boolean类型
                // 注:false、0、NaN、空字符串、undefined、null 转换成 布尔值是 false,其他的都是true
                console.log(Boolean(false));  // false
                console.log(Boolean(0));  // false
                console.log(Boolean(NaN));  // false
                console.log(Boolean(''));  // false
                console.log(Boolean(undefined));  // false
                console.log(Boolean(null));  // false
                console.log(Boolean(1));  // true
                console.log(Boolean(55));  // true
                console.log(Boolean('123'));  // true
                console.log(Boolean('abc'));  // true
                

            




    </script>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <script>
    //   var num1 = prompt("请输入一个数字");
    //   //  空得字符串  点击取消返回null  输入数字是数字得字符串
    //   if (num1 === "" || num1 === null || isNaN(num1)) {
    //      console.log("输入数字有误!!")
    //   }else{
    //     if (num1 % 3 === 0 && num1 % 7 === 0) {
    //       console.log(num1 + "这个数字可以被3和7同时整除");
    //     } else {
    //       alert(num1 + "这个数字是不可以得");
    //     }
    //   }

  
        var year = prompt("请输入一个年份");
        //  &&得优先级高与||
        //  &&得优先级高与||
        if(year%4 == 0 && year% 100 !=0 || year%400===0){
            alert(year+"年是闰年")
        }else{
            alert(year+"年是平年")
        }

    </script>
  </body>
</html>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值