JavaScript知識點總結-2

函數:(方法)封裝執行一項 專門任務的步驟 的代碼序列。
  語法:
    聲明:
      function 方法名(參數列表){
      方法體:步驟清單
      return 返回值;
      }
    調用:方法名(參數值列表);
    參數:方法內獨有的變量。接收傳入數據,在方法內處理。
      參數讓方法變靈活!參數何時被創建?只有方法被調用時才自動創建。
      參數僅限方法內部使用!方法外無法訪問方法的參數變量。
    參數的作用:1. 接收外部傳入數據,在方法內處理
                2. 規定調用方法的人必須提供哪些參數!
    返回值:方法執行完成後,返回的一個數據。
      return:本意退出方法!退出同時,可返回數據!
      帶返回值的方法,使用時,等效於直接使用返回值數據。
    何時使用返回值:
      根據方法調用者的需要!
      如果方法調用者需要明確返回一個結果,就定義返回值!
      否則,可以不定義返回值!
      有返回值的方法,可以當做1個值用!
      何時必須用變量接住?方法的返回值,後續程序可能反覆使用!
  作用域:一個變量的可用範圍!
    全局作用域:直接聲明在全局作用域中的變量,叫全局變量
      window對象:是整個網頁的全局作用域對象
    局部(函數)作用域:聲明在方法內部的變量或方法的參數變量,都叫局部變量。
  值傳遞:將一個變量的值賦值給另一個變量,其實將原變量中的值,複製一份給新變量。js中一切賦值都是值傳遞!
    對未聲明的變量賦值:js會自動在全局創建該變量!
  函數作用域和變量作用域完全一樣:函數作用域在調用方法時創建,方法執行完立刻銷燬! 

全局函數:ECMAScript定義了標準,由各瀏覽器廠商已經實現的函數。直接調用!
  isNaN(x)
  parseInt/Float(x)
  encodeURI:將url中的非法字符轉爲單字節符號——編碼
  decodeURI:將encodeURI轉後的字符串,轉換回原文——解碼
    unicode編碼:每個字符2字節
    utf-8編碼:字母、數字單字節  漢字3字節
  encodeURIComponent:既能對多字節非法字符編碼,又能對單字節非法字符編碼
    何時使用?將數據通過url發送時,都要先編碼再發送
  eval():專門執行字符串格式代碼
程序結構:3種--順序;分支;循環

  分支結構:程序運行過程中,可以根據不同的條件,執行不同的任務。
    分支結構1:
      if...結構:   1件事,要麼做,要麼不做
      if...else...結構:    2件事,二選一執行
      elseif結構:多件事,多選一執行。如果前一個條件已經滿足,則後續else if不再執行!
      分支結構中的條件,可以不是邏輯表達式!如果不是,js會自動轉換爲Boolean類型:0,null,undefined,NaN,“”,0.0都轉爲false,其餘,都轉爲true!

    分支結構2:switch...case...多條分支,根據條件判斷,選擇執行
      語法:switch(表達式){
          case 表達式1://如果表達式的值===表達式1的值
            代碼段1;
          …
            case 表達式n:
              代碼段n;
              default: //如果表達式的值和所有case都不相等
              默認代碼段;
          }
      運行機制:如果找到與表達式值匹配的case,不但執行當前case下的代碼,而且之後所有代碼都被觸發!
      break:退出當前結構.

  循環結構:程序反覆執行同一套代碼段。遇到結束條件,會結束執行。

    循環三要素:
      1. 循環條件:循環繼續執行的條件。
      一旦循環條件不滿足,循環立刻退出!
      2. 循環變量:用於循環條件中做判斷的變量
      循環變量都會向循環退出的趨勢變化(不滿足循環條件的趨勢)——循環計數器
      3. 循環體:每次循環要做的事情

    while循環:當滿足條件時,就繼續循環做...事
      語法:
        var 循環變量;
        while(循環條件){
            循環體;
            迭代變化循環變量;
        }
        break: 退出當前結構
        while中何時用break:循環條件不滿足之前,希望強行退出循環。

    do-while循環:先執行一次循環體,再判斷是否繼續!
      如果第一次循環條件不滿足,循環體至少可以執行1次!
      語法:
        var 循環變量;
        do{
            循環體;
            迭代變換循環變量;
        }while(循環條件);
      *變量聲明提前*: “相同作用域內”,var...無論出現在什麼位置,解析時,優先提取到js開始位置“聲明”!
    while vs do while:
      如果第一次條件就可能不成,也想執行一次,必須用do while
      如果第一次條件一定滿足,do while等效於while。
    for循環:完全等效於while循環。
      適用:循環變量變化規律固定,循環次數已知/固定
      語法:
        for(聲明並初始化循環變量;循環條件;迭代循環變量){
          循環體;
        }
      continue:跳過本輪循環,繼續執行下一輪循環。
    遇到複雜問題:先用簡單辦法做最簡單的事情。從簡單辦法中找規律!


























發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章