JavaScript 变量,语句

 定义变量的方式:

    var   变量可以没有初始值,变量可以修改,变量可以覆盖,存在变量提升。

      // 变量提升机制

       console.log(name)// undefined

          var name = "Amos";  

    let   块级作用域,不允许重复声明,不存在变量提升,值在当前作用域内生效,在使用未定义的变量会报错。

 

      console.log(name); // ReferenceError:name is not defined

      let name= "Amose"

 

    const   变量必须有初始值,变量值不可改变,变量值不可覆盖,只有在当前作用域内有效。变量不可提升:

      console.log(name); // ReferenceError:name is not defined

      const name= "Amose"

 

      注意:一个常量不能和它所在的作用域的其它变量或函数有相同的名称

               在函数内部不使用关键字声明变量就变成了犬决变量

       var   a = 'hello world';

        function b(){

          a = 'hello Amose'

          console.log(a)

        };

        b() ; // 'hello Amose'

        console.log(a); // 'hello Amose'

 

  语句:

    if语句

      当条件为真,if语句会执行一段语句,如果条件为假,则执行另一段语句。

        if(true){ }else{ }

        示例:使用if...else

           if(条件){

              条件为真的时候执行

           }else{

            条件为假的时候执行

           }

           使用else if

        if(条件){

          条件为真的时候执行

        }else if(条件) {

          条件为真的时候执行

        }else{

          条件为假的时候执行

        }

    注意:如果在条件中使用赋值运算,用元括号包裹赋值运算。

      if((a=b)){  }

      if...else的简写方式三目运算:     (条件)?表达式1:表达式2;

  do-while 语句

      在检查条件是否为真之前执行一次代码块,然后如果条件为真的话,就会重复这个循环。

      do{   // 需要执行的代码} while (条件)

      实例:

      do{

        console.log("The number is"+ i)

        i++

      }

      while (i<5)

    while 语句

      while 循环会一直循环代码块,只要指定的条件为true

      while(条件){要执行的代码块}

     while (i<10){

        text += "数字是"+i;

        i++

      }

    for语句

       同样的代码执行多次,并且每次的值都不同

      语法:for (语句1;语句2;语句3) { 找执行的代码块 }

      

          示例:循环一个数组

          var array = [1,2,3,4,5,6,7,8];

          for(var i=0; i< arry.length;i++){

            console.log(i,array[i])

          }

    for-in语句

       语句遍历对象的属性。 

     var   person = {fname:"Bille",lname:"Gates",age:62}

          var  text = “”;

          var x;

          for (x in person){

          text += person

       }
       循环数组  
      var  arr = [1,2,3];         
      let index;         
      for(index in arr) {           
        console.log("arr["+index+"]"+arr[index])        
      }

    label 语句

       语句的前面有标签label 相当于定位符,语句部分可以使任意语句。

       label

        statement

    break 和 continue 语句

       break 语句 跳出 循环

        break   语句  会中断循环,并继续执行循环之后的代码

        for (i = 0; i < 10; i++){

          if(i === 3){ break }

          text += "数字是"+i+ "<br>";

        }

       continue  语句 跳过 循环中的一个迭代

        continue 语句 中断(循环中) 的一个迭代,如果发生指定的条件,然后继续循环中的下一个迭代。

        本例跳过值3

        for(i = 0; i < 10: i++){

          if (i ===3){

            continue;

          }

          text += "数字是" + i + "<bar>";

        }

    with 语句

      with 语句是逐级的对象访问提供命名空间式的速写方式,也就是在指定的diam区域,直接通过节点名称调用对象。

      var obj = {a:1,b:2,c:3}

        // 改变 obj 中每一项的值,

        obj.a = 2;

        obj.b = 3;

        obj.c = 4;

      用with 的写法

      with (obj){

          a = 3;

          b= 4;

          c = 5;

        }

  switch 

      switch 语句来选择要执行的多个代码模块之一。

      语法:

      switch(num){

          case 1:

           执行代码块 1

           break;

          case 2:

           执行代码 2

           break;

          default:

            与 case 1 和 case 2 不同时执行的代码。

        }

        

      

      

posted @ 2019-11-06 21:52  柠檬先生  阅读(519)  评论(0编辑  收藏  举报