实现原理就是计算五子棋所有赢的种类,利用canvas实现五子棋排版落子。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>五子棋</title>
<style>
#canvas{
display: block;
margin:50px auto;
box-shadow: -2px -2px 2px #EFEFEF, 5px 5px 5px #b9b9b9;
}
</style>
</head>
<body>
<canvas id="canvas" width="450px" height="450px"></canvas>
<script>
var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');
var me = true; //true黑子, false, 白子
var over = false;
var box = []; //全部落子点
var wins = []; //全部赢的方法 三维数组
for(var i = 0; i< 15 ;i++) {
box[i] = [];
wins[i] = [];
for(var j = 0; j < 15; j++) {
box[i][j] = 0;
wins[i][j] = [];
}
}
var count = 0; //总共赢的数量572种
//横向
for(var a = 0; a < 15; a++) {
for(var b = 0; b < 11;b++) {
//wins[0][0][0]
//wins[0][1][0]
//wins[0][2][0]
for(var c = 0; c < 5;c++) {
wins[a][b + c][count] = true;
}
count++;
}
}
//纵向
for(var a = 0; a < 15; a++)