JavaScript的流程控制語句以及函數

1、流程控制函數

1. 做用:控制代碼的執行順序spa

2. 分類code

2.1順序結構:從上到下依次執行代碼語句blog

2.2選擇結構:ip

1. if語句作用域

簡單if結構字符串

if(條件表達式){
    表達式成立時執行的代碼段
}

注意 : 除零值之外,其餘值都爲真,如下條件爲假值falseit

if(0){}
if(0.0){} if(""){} //空字符串 if(undefined){} if(NaN){} if(null){}

特殊寫法 : { }能夠省略,一旦省略,if語句只控制其後的第一行代碼io

2. if - else結構:function

if(條件表達式){
//條件成立時執行
}else{ //條件不成立時選擇執行 }

3.多重分支結構:

if(條件1){
      //條件1成立時執行
  }else if(條件2){ //條件2成立時執行 }else if(條件3){ //條件3成立時執行 }...else{ //條件不成立時執行 }

2. switch語句:

語法 :

switch(value){
case 值1 :
//value與值1匹配全等時,執行的代碼段
break; //結束匹配
case 值2 :
//value與值2匹配全等時,執行的代碼段
break;
case 值3 :
    //value與值3匹配全等時,執行的代碼段
break;
default:
//全部case匹配失敗後默認執行的語句
break;
}

使用時要注意的:

1. switch語句用於值的匹配,case用於列出全部可能的值;只有switch()表達式的值與case的值匹配全等時,纔會執行case對應的代碼段
2. break用於結束匹配,再也不向後執行;能夠省略,break一旦省略,會從當前匹配到的case開始,向後執行全部的代碼語句,直至結束或碰到break跳出
3. default用來表示全部case都匹配失敗的狀況,通常寫在末尾,作默認操做
4. 多個case共用代碼段
          case 值1:
          case 值2:
          case 值3:
          //以上任意一個值匹配全等都會執行的代碼段

3.循環結構:

做用 根據條件,重複執行某段代碼

1. while循環:

定義循環變量;
  while(循環條件){
  條件知足時執行的代碼段
  更新循環變量;
}

2. do-while循環:

do{
循環體;
更新循環變量
}while(循環條件);

while 與do-while循環的區別 :

while 循環先判斷循環條件,條件成立才執行循環體

do-while 循環無論條件是否成立,先執行一次循環體

3. for 循環

for(定義循環變量;循環條件;更新循環變量){
    循環體;
}

循環控制 :

break 強制結束循環

continue 結束當次循環,開始下一次循環 循環嵌套 : 在循環中嵌套添加其餘循環

 

2、函數

函數的做用:封裝一段待執行的代碼

語法:

 //函數聲明
  function 函數名(參數列表){
      函數體
      return 返回值;
  }
  //函數調用
  函數名(參數列表);

使用: 函數名自定義,見名知意,命名規範參照變量的命名規範。普通函數以小寫字母開頭,用於區分構造函數(構造函數使用大寫字母開頭,定義類)

三,匿名函數

匿名函數:省略函數名的函數。

語法爲:

匿名函數自執行

(function (形參){
 
})(實參);

定義變量接收匿名函數:

var fn = function (){};
fn(); //函數調用

四,做用域

JavaScript 中做用域分爲全局做用域和函數做用域,以函數的{ }做爲劃分做用域的依據

1,全局變量和全局函數

只要在函數外部使用 var 關鍵字定義的變量,或函數都是全局變量和全局函數,在任何地方均可以訪問

全部省略 var 關鍵字定義的變量,一概是全局變量

2,局部變量/局部函數

在函數內部使用 var 關鍵字定義的變量爲局部變量,函數內部定義的函數也爲局部函數,只能在當前做用域中使用,外界沒法訪問

3,做用域鏈 局部做用域中訪問變量或函數,首先從當前做用域中查找,當前做用域中沒有的話,向上級做用域中查找,直至全局做用域

相關文章
相關標籤/搜索