跟我學《JavaScript高程3》 第二講,課程筆記

跟我學《JavaScript高程3》

第二講:第3章

課程製作:bling,興哥,5年Java,3年前端
課程知識:JavaScript、Html、Css
課程目標:前端體系課程,逐步深入,找到一份前端工作   
課程大綱:本書目錄結構
適合人羣:前端初學者,可以0基礎,但要認真,踏實

課程回顧

1、靜態項目基本結構:html、css、js、p_w_picpaths   
2、文件的方式引入一個JavaScript腳本文件:引入方式、引入路徑 
3、變量編寫Hello,world:變量的定義,使用變量。

補充:變量在講解函數後,會提到全局變量和局部變量。

課程筆記

1、JavaScript中的數據類型

分類:

    數據類型:5種簡單數據類型,1中複雜數據類型

    typeof:

        用於判斷變量是哪種類型,如果需要判斷變量爲何種類型,直接使用typeof關鍵詞,空格接着寫上變量就可以了。
        比如,前幾天羣裏面的一個問題,如何判斷數組,也是使用typeof。

    undefined:

        如果我們定義了一個變量,但是沒有給變量賦值,這個時候,變量就是undefined。
        如果我們沒有定義一個變量,而是直接去使用,那麼會報錯。提示 not defined。
        如果JavaScript文件中有程序報錯,那麼程序會停止執行。

    null:

        null是表示一個空值,但是要注意,我們定一個變量爲null的時候。
        如果使用typeof操作符判斷類型的時候,返回的是object,因爲指向的是一個空的對象。

        null一般用於給變量初始化使用。在進行邏輯運算的時候,與undefined是相等的。     

    number:

        number類型用於表示數字,整數和浮點數。

        NaN:正數除以0的時候返回infinity,負數除以0返回-infinity。只有0除以0的時候返回NaN。任何非數字類型的值去做除法運算,都會返回NaN。
        編程中判斷NaN的時候,採用isNaN(xxx)去判斷。
        字符串類型轉換數字有兩個常用的函數,parseInt()和parseFloat(),這兩個函數都比較“智能”,因此在使用的時候需要留意。
        toFixed(2)用於保留有效位數,參數是保留的位數。在JavaScript中,保留位數的時候,注意四捨五入的規則,和我們學習的數學不太一樣。
        只適用於要捨去的位數值是5的情況,判斷前面一位數,如果小於5,不進位,如果大於等於5,則進位。

    boolean:

        boolean的值只有true和false兩種。在與數字對比的時候,只有1等於true,0等於false。
        但是,在做邏輯判斷的時候,是另外一種情況。非空的值都是true,空值null也是flase。
        我們在給字符串或者其他類型轉換爲boolean值的時候,使用的是Boolean()函數。
        注意:轉換的時候,只會關心這個變量有沒有值,不會關心變量的內容。整形的變量0和1是特例。

    string:

        字符串可以使用單引號或者雙引號包裹,但是不能一邊使用單引號另外一邊使用雙引號。
        JavaScript中字符串是不允許修改,如果做字符串操作,會重新分配空間。
        字符串有個length屬性,用於判斷長度。轉義符的長度爲1。

    Object:

        創建Object對象的時候,建議使用new關鍵詞。Object對象是JavaScript中所有對象的基類,任何對象都會自動擁有Object對象的方法。

知識點:

    數據類型是任何一門編程語言的基礎,一定要好好理解。
    JavaScript中所有的變量都是使用var關鍵詞定義。
    這幾種數據類型都有一個特點,都可以衍生出數組類型,數組是將同一類型數據,多條,賦值給一個變量,用中括號包裹。
    數組變量的類型的如果使用typeof操作符,也會返回object。
    比如:數字類型數組,字符串數組,等等。

2、操作符

分類: 

    一元操作符 : ++ -- += =+ -= =- 。。。。。

        需要注意,++和--的時候,放在變量的前面,是先給變量的值做++或者--的運算。如果放在後面,是先做其他運算,再給變量自身進行++或者--的操作。 
        ++和--的步進值是1。
        += 操作符對變量沒有任何改變,=+會改變變量,加上被設置的值。其他-=、=-、*=、=*。。。。。類似。

    布爾操作符 : && || !

        && : 只有兩邊都是true的時候,才爲true。有一個爲false的時候,就爲false
        || : 有個爲true就爲true
        !  : 如果給true取反,就是false。相反如果給false取反,就是true。

        注意:做邏輯運算的時候,需要注意邏輯運算的順序,爲保證正常執行,可以使用()

    關係運算符:== > < >= <= ===

        用於兩個變量之間的比較,返回true和false,前面5中會對變量進行默認類型轉換。
        第6種是絕對等於,不會進行數據轉換。一般用於對數據有嚴格要求的地方。

    條件操作符:xxx?xxx:xxx;

        也叫三元操作符,第一個表達式一般是關係操作符。
        如果值爲真(true),那麼執行第二個,如果爲假(false),那麼執行第三個。

    逗號表達式:,,,,

        逗號表達值永遠執行最後一個。瞭解。           

知識點:

    操作符運算需要注意優先級,我這邊總結了一句話,可以方便理解。算關邏條賦逗。

3、語句

分類:

    if-else:

        用於一次判斷,if中的判斷條件是邏輯運算,如果最終結果爲true,那麼執行if後面{}包裹的程序,如果爲false,那麼執行else後面{}包裹的程序。
        else不是必須的。

    do-while:

        可以用於多次循環遍歷,先執行do中的邏輯運算,如果爲true,則執行while後面()包裹的判斷,如果爲false,則跳出循環。
        注意和while的區別。

    while:

        用於多次循環遍歷,自身擁有判斷條件,如果爲真則一直執行,如果有一次爲false,那麼會跳出循環。

    for:

        用於多次循環遍歷,擁有一個三元操作符。循環的次數由後面的兩個表達式控制。經常與++和--搭配使用。

    for-in:

        一般用於遍歷對象的屬性使用,可以方便的獲取到對象的屬性名稱和屬性值,在工作中做工具類的時候使用較多。

    label:

        代碼段加標籤,一般與循環中的break和continue搭配使用。不常用。

    break,continue:

        和循環搭配使用,進行邏輯的控制。break是跳出循環,continue是繼續執行循環,不執行後面代碼。

    with:

        簡化同一個對象的頻繁編寫,可以使用,但是不常用。因爲不便於代碼的閱讀理解。

    switch-case:

        功能類似if-else,但是可以方便組織代碼結構。注意使用的時候,別忘了要搭配一個break。有時候還會有一個default。

知識點:

    語句是用於控制程序的邏輯結構,數據的處理,語句也是任何一門編程語言的基礎,在任何語言中基本是類似的。一定要好好掌握。
    工作中經常使用的有if-else,for,for-in,while,swith,break-continue。
    其中break-continue,一般是用於循環遍歷中的控制。

4、函數

概念:使用function關鍵詞定義,可以隨機定義參數,函數的參數叫做形參。

作用:函數用於包裹一個功能,比如對某種數據的處理,日期格式的轉換,數據的校驗等等。

知識點:函數是一次編寫,多處調用。有一種神奇的函數,叫做匿名函數,在工作中使用的頻率也會很高。
函數也是非常重要的功能,在工作經常使用,一定要好好學習,函數有很多玩法,後續的課程中會陸續提到。

課後作業

1、理解數據類型、操作符、語句、函數的概念,弄清楚各自在什麼時候使用。

2、編寫一個加、減、乘、除運算的四個函數,函數中需要彈出計算機結果是正數還是負數的提示框。


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