1. 程式人生 > >js基礎簡單總結

js基礎簡單總結

資料型別(基本資料型別/複雜資料型別) - 基本資料型別和複雜資料型別的區別: - 儲存的個數不同: - 記憶體儲存:基本資料型別在記憶體單元中儲存的是值 複雜資料型別記憶體單元中儲存的是地址 - 複製操作: 淺拷貝,基本資料型別 - 基本資料型別 - string - 標識方式:” 成對的英文半形的單引號或雙引號 - 轉義符的使用:\n \t … - 型別轉換方式 - 強制轉換:string()/tostring() - 隱式轉換:字串拼接 + - number - 值:固定值/小數 - 小數的問題:parseFloat()/parseInt() - 特殊值:NaN(true/false) - 轉換方式: - 強制轉換:number() - 隱式轉換:取正或取負 + - - boolean - 轉換方式:boolean() - 轉換結果(為false值): false NaN 0 ” null undefined - undefined - 出現場景:未命名的變數 - null - 型別檢測方式:Object.prototype.toString.call() - 基本資料型別的型別檢測方式:typeof - 複雜資料型別 - 物件object(廣義的) - 根據功能,物件又劃分為多個型別 - Math: Math.PI圓周率 Math.ceil向上取整 Math.floor向下取整 Math.round四捨五入 Math.random隨機數

          - Date: 
                    Date.getFullYear()
                    Date.getMonths()
                    Date.getDays()
                    Date.getDate()
                    Date.getHours()
                    Date.getMinutes()
                    Date.getSeconds()
                    Date.getMillSeconds()
          - Array:
            - 宣告方式: 
                        - var arr = new Array();
                        - var arr[];
            - 索引:0~~arr.length-1
            - 長度屬性:arr.length
            - 遍歷操作:for迴圈
            - 方法:
                         pop() push() 
                         unshift() shift()
                         concat() slice() splice()                               
                 indexOf()獲取某個指定元素的位置 sort()    reverse()
            - 轉換成字串方法: toString() join()
          - String:
            - 基本包裝型別物件:
            - 方法:concat() slice() substr() substring() toUpper()toLower() 
                    split() replace()
          - Function:(函式本質上也是物件,也會具有屬性和方法,是js高階部分的內容)
            - 宣告方式:function 函式名() { 函式體 }
            - 引數:
                - 使用場景:當一個函式中的某些值不確定時,  可以設定的引數
                - 分類:形參 實參
            - 返回值:
                - 使用場景:函式中的變數在函式外無法訪問,導致函式計算的結果無法獲取
                - return的其他作用:1.設定函式返回值 2.結束函式
            - 作用域:
                - 分類:全域性變數 區域性變數
                - 作用域鏈(訪問規則):向上查詢
            - 預解析:
                - 發生的時機:每個作用域開啟之前都會發生預解析操作
                - 執行的操作:
                    - 變數提升:變數宣告提升到當前作用域頂端, 賦值保留在原位置
                    - 函式提升:函式宣告提升到當前作用域頂端, 函式呼叫保留在原位置
          - Object:(狹義的物件)
            - 宣告方式:var obj = new Object();
            - 屬性和方法的操作:
                - 物件.屬性名
                - 物件['屬性名']
            - 建構函式:
                - 書寫形式:function CreatObject(){}
                - new的作用:構建物件
            - this的使用方式:
                - 普通函式中:window物件
                - 方法中:指當前函式(呼叫者)
                - 建構函式中:new呼叫時將建構函式內部的this修改為了建立的物件。
            - 遍歷操作:
                - for..in:物件是一種無序的資料儲存方式。

        運算子(操作符):
            - 一元運算子 ++ -- !
            - 算數運算子 + - * / %
            - 比較運算子 < <=  > >=  
              - 普通比較:== !=
              - 相等全等:=== !==
            - 邏輯運算子:
                - 普通使用方式:&& || !
                - 特殊使用方式(短路操作):
            - 三元運算子:? :
            - 賦值運算子:=
            - 運算子優先順序:同上

        語句:
            - 流程控制:
                - 順序結構 從上而下
                - 分支結構
                    - if
                        - 語法形式:if/if-elae/if if-else else
                        - 三種使用形式:
                        if () {}
                        if () {} else {}
                        if () {} else if {} else {}
                    - switch
                        - 語法形式:switch-case
                        - 規則:全等比較
                        - 特殊使用方式:範圍比較操作
                - 迴圈結構
                    - for: for( ; ; )
                    - while: while () {}
                    - do..while: do {} while ()
                    - 三種迴圈的使用場景:    
                        - for: 已知迴圈次數
                        - while: 不知迴圈次數
                        - do..while: while的簡化
                - break和continue
                    - break:破壞迴圈
                    - continue: 結束當前迴圈