Head First Javascript 程式設計讀書筆記(二)

fzhw88發表於2017-09-26

第二章完全就是任務驅動的型的內容啦,而且在這一章的開頭畫了一個好大的餅——你能做出一個超級棒“打戰艦”的遊戲!至於第二章嘛,我們先來個簡化版的,跟著我一步一步來……

遊戲的內容就不在讀書筆記裡詳述了,總之這一章的內容圍繞著這個簡化版遊戲的完成而展開,如果你是一個沒有程式設計經驗的新手,順著流程圖->虛擬碼->JavaScript程式碼這個流程,能完整的體驗到一個程式的設計和編寫過程,中間最重要的就是要理清邏輯,這一點也是能吸引老手來回味一把的,我就不劇透了,自己慢慢體會吧。

這裡只列出一些本章接觸到的知識點。

流程圖中圓形(圓角矩形)代表開始和結束,箭頭代表工作流方向,矩形代表一個動作,菱形代表判斷/ 決策,(平行四邊形代表輸入輸出)。

虛擬碼是一種介於程式語言和自然描述語言之間的用以描述程式邏輯的簡單語言。

prompt()用於獲取使用者輸入,它會彈出一個簡單的對話方塊,包含傳入該函式的字串引數並且返回使用者輸入的字串值。

prompt('What's you name?');

布林運算(結果是布林值)包括兩種,一種是比較運算(<,<=,>,>=,==,===,!=,!==),另一種是邏輯運算(&&,||,!)。

3>5;      //false
6<=6:    //true
true&&false;    //false
!true      //false

多重if語句往往可以通過邏輯運算進行簡化。

if( a>0 ){
    if( a<10 ){
        //codes
    }
}

簡寫成:

if( a>0 && a<10 ){
    //codes
}

質量保證(quality assurance,QA)是指對軟體進行測試以找出其中的缺陷。

if(bool=true)可以簡寫成if(bool)。

Math.random()用來生成([0, 1))隨機數,Math.floor()用來對一個小數取整(直接捨棄小數位),

var a = Math.floor ( Math.random ( ) * ( n+1 ) );
//a是一個大於等於0,小於等於n的正整數
var b = m + Math.floor ( Math.random () * ( n-m ) ) 
//b是一個大於等於m,小於等於n的正整數

以上是一些所謂硬知識點,然而這一章最重要的還是體驗一個程式的設計編寫過程,尤其是其中的邏輯問題。

相關文章