2018-08-21

学习JavaScript的day2

一、运算符的隐士转换

        1、加法: 如果有字符串,隐士转换为字符串, 如果没有转为number;

            例如: var a = true + (1 + '你好') + null;(运行结果:true1你好null)

                        var b = true + 1 + undefined;(运行结果:NaN)

                        var c = true + 1 + null;(运行结果:2)

                         var d = '你好' + '世界、!';(运行结果:你好世界)

        2、减、乘、除、求余: 隐士讲元素转为number类型;

                例如:

                        var m = '11' - 1;(运行结果:10)

                        var d = '11' * 1;(运行结果:11)

                         var n = true + '11' - '20';(运行结果:NaN)

                          var l = '12' - 0 + false;(运行结果:12)

              3、数字字符串转换数字类型

                      ①  a - 0 ;

                      ② a * 1 ;

                      ③ a / 1;

                4、关系运算符:== === != !== > < >= <=

                        ①.如果有布尔类型,先转换为数字类型

                        ②.如果有数字类型的,默认都转为数字

             【注意】: null 跟 undefined 互相相等,等于本身,其他的都不想等。

              【注意】:null>=0是为true;这是特殊的;但是null==0为false;

 二、浏览器的三个弹窗

                    1、提示框:alert(); 提示信息,没有交互。只有一个确定按钮;

                    2、 确认框: confirm();确定按钮,和取消按钮。返回true或者false;点击取消:返回null

                        点击确定:返回用户输入的内容, 如果不输入返回空字符串;

                    3、对话框:prompt();跟浏览器进行对话,有一个输入框,两个按钮,确定按钮,关闭按钮

                        返回值是: 用户输入的内容;

                   [注意]  缺点: 1. 样式不可以修改

                                          2. 三个弹窗都回阻塞进程


 三、 if语句

                    1、代码结构

                             if(表达式 / 条件) {

                                                    // 代码块

                                        } else {

                                                    // 代码块

                                        }

                                if(表达式 / 条件) {

                                                    // 代码块

                                    } else if(条件) {

                                    } else {

                                    // 代码块

[注意]   当我们在文本框输入一个数字或者字符它都默认转换为字符输出,所以我们要使用的时候记得需要转换为数字(x.numbe(x));

 三、Math对象(常用的Math方法)

         1、console.log(Math.PI);//取π的值

         2、 console.log(Math.abs(-10))// 去绝对值

         3、console.log(Math.floor(10.99));// 向下取整

         4、 console.log(Math.ceil(10.0000001));// 向上取整

         5、console.log(Math.round(9.5)); // 四舍五入

         6、console.log(Math.pow(2, 5)); // 求2的5次幂

         7、console.log(Math.random()); // 求随机数, 返回一个0 - 1的浮点数

【注意】console.log(Math.random())想取一个自己想要的范围方法有:

                   随机数 = Math.random() * (max - min) + min

四、switch语句

          1、switch结构:

                        switch(要选择的值) {

                                            case 值: 

                                                        代码块

                                                case 值:

                                                        代码块

                                                default:

                                                        不满足以上条件,才执行(相当于if语句中的else)

                                                            }

                                      // case穿透,满足条件后, 后面的代码无论条件是否满足全部执行,直到breakd的出现,才会终止。

                                switch(要选择的值) {

                                                    case 值: 

                                                                代码块

                                                                  break

                                                    case 值:

                                                                代码块

                                                                 break

                                                                }

    【注意】:  在使用switch语句时还应注意以下几点:

                        选择的值跟后面的值是恒等于;

                        在case后的各常量表达式的值不能相同,否则会出现错误。

                        在case后,允许有多个语句,可以不用{}括起来。

                        各case和default子句的先后顺序可以变动,而不会影响程序执行结果。

                        default子句可以省略不用。

       其语义是:计算表达式的值。 并逐个与其后的常量表达式值相比较,当表达式的值与某个常量表达式的值相等时, 即执行其后的语句,然后不再进行判断,继续执行后面所有case后的语句。如表达式的值与所有case后的常量表达式均不相同时,则执行default后的语句。


            

你可能感兴趣的:(2018-08-21)