您的位置:首頁>正文

javascript做完這個五子棋,終於到了滿級,能找多少薪的工作呢?

HTML5/javascript五子棋的核心關鍵點是:

1、弄清楚有多少種贏法;

2、怎麼判斷是否已經贏了;

3、電腦下棋演算法。

這裡巧妙地運用javascript陣列存儲贏法, 判斷是否贏了,

通過權重比較, 計算出電腦該下棋的位置。

這個五子棋不僅僅是javascript, 也體現了html5的一些新特性, 比如canvas繪圖, 嚴格的來講是比較難的, 但是對於學習javascript的夥伴來說, 這又是一個非常好的鍛煉專案, javascript重在思維與邏輯, 而對於邏輯的鍛煉, 個人認為沒有比遊戲更為合適的了, 所以對於javascript學習沒有自信, 不知道怎麼學的, 不妨用這個項目來練練手!

對於web前端的學習有不懂的, 或者不知道學習路線, 不知道學習方法, 不知道該如何扎實學習能找到工作的朋友, 可以來我們頭條前端群570946165, 全套系統學習資料已上傳群檔!

javascript代碼詳解

從效果圖可以看到, 棋盤的橫豎可以放的位置為15*15, 通過canvas畫棋盤:

知道格子數後, 我們先看五子棋有多少種贏法:

根據贏法總數定義分別保存電腦和人贏法的陣列:

然後就是人開始下棋:

oneStep() 方法為落子, 要在棋盤上畫一個棋子:

接著看電腦怎麼下棋,

具體看computerAI()方法:

根據相應的權重, 計算出電腦應該落子的位置。

悔棋以及撤銷悔棋用javascript怎麼實現?

要提的是, 這裡暫時只能悔一步棋。 悔棋功能主要關鍵點是:1、銷毀剛剛下的棋子;2、將之前不可能贏的狀態還原;看下具體的代碼:

minusStep()為銷毀棋子的方法, 我們看下是怎麼銷毀的。

首先通過clearRect()擦掉該圓,然後再重新畫該圓周圍的格子,注意相應的位置,這裡花了些時間折騰。

悔棋過後,再撤銷,相當於還原悔棋之前的狀態。代碼比較簡單:

至此html5/javascript五子棋基本實現,剩下的佈局一些補充在此不一一寫出

對於web前端的學習有不懂的,或者不知道學習路線,不知道學習方法,不知道該如何扎實能找到工作的朋友,可以來我們頭條前端群570946165,全套系統學習資料已上傳群檔!

需要更多前端學習資料/視頻/學習方法,請關注後,私信“學習”

首先通過clearRect()擦掉該圓,然後再重新畫該圓周圍的格子,注意相應的位置,這裡花了些時間折騰。

悔棋過後,再撤銷,相當於還原悔棋之前的狀態。代碼比較簡單:

至此html5/javascript五子棋基本實現,剩下的佈局一些補充在此不一一寫出

對於web前端的學習有不懂的,或者不知道學習路線,不知道學習方法,不知道該如何扎實能找到工作的朋友,可以來我們頭條前端群570946165,全套系統學習資料已上傳群檔!

需要更多前端學習資料/視頻/學習方法,請關注後,私信“學習”
同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示