微信经典2048游戏小程序的算法解析

该程序的主要难点在于用户滑动屏幕时合并值相同的单元格,并将空格标为0(代码中使用""表示空格)。假设棋盘如下:0 2 0 0 0 2 0 0,通过touch相关的事件函数确定用户滑动方向,将棋盘的数字生成4x4的二维数组。根据用户滑动方向生成四个小数组,比如用户将上述棋盘向右滑动,则四个数组为:item[0] = [2, 0, 2, 0];item[1] = [0, 0];item[2] = [2, 0](注意是2000而不是0002,因为向右滑动要从右边开始);item[3] = [0, 0]。接下来是滑动时合并操作,以item[0]为例,如果是2020,向右滑动应变为0004。首先将item[0]的所有0移到末尾变为2200,然后遍历item,将相同的下标值相加,后面的数置为0。即2020 -> 2200 -> 4200 -> 4000。依此类推即可实现滑动时合并。
rar
weapp-2048.rar 预估大小:24个文件
folder
weapp-2048 文件夹
folder
pages 文件夹
folder
2048 文件夹
file
2048.wxml 1KB
file
grid.js 958B
file
2048.json 27B
file
main.js 3KB
file
2048.js 3KB
file
2048.wxss 3KB
folder
index 文件夹
file
index.wxml 394B
file
index.js 520B
file
index.json 72B
file
index.wxss 410B
folder
logs 文件夹
file
logs.json 52B
file
logs.js 261B
file
logs.wxml 173B
file
logs.wxss 106B
file
app.json 274B
file
project.config.json 525B
file
app.js 1KB
folder
utils 文件夹
file
util.js 472B
file
app.wxss 194B
folder
img 文件夹
file
exp1.png 29KB
file
logo.png 210KB
file
index.png 23KB
file
exp2.png 49KB
file
README.md 1KB
rar 文件大小:314.27KB