发表于: 2017-04-16 21:54:46
2 1204
今天完成的事情:继续昨天的进度,上午对法官日志页和投票页加载时控制台出现报错的问题进行了部分解决,下午开始编写代码判断游戏结束的条件,跳转到结束页面,后来开始编写结束页面的js代码,目前还没有完成。
明天计划的事情:完成结束页面的js代码,调试修改有问题的代码。完成任务4。开始任务5的学习。
遇到的问题:
第一个,怎么判定游戏结束?开始还是没有什么头绪,后来就先从杀手人数开始下手。判断玩家已经死亡的数组中检查是否有杀手,杀手的人数是不是全部杀手的人数,如果是就结束游戏,水民胜利了。后来又计算剩余存活的人数,一旦其中的杀手数大于平民数就结束游戏,以上两个条件满足一个就可以跳转到下一个页面。目前是按照这个来进行设计js代码的,其中使用到了任务中合并前的杀手数组和平民数组,任务4中生成的死亡玩家数组。
第二个,怎么样才能从死去的玩家数组中抽检出死亡的杀手数组?开始在网上查找了$.ggrep()的方法,通过一下代码,检查出a、b两组代码中相同的部分生成新的代码。
var a=[0,1,2,3,4,5];
var b=[2,4];
$.grep(a,function(val){
if(b.indexOf(val)>=0){
return val;
}
},false)
console.log: [2,4];
但是在套用这段代码时出现了一点问题,它只能调用我声明并初始化的杀手的数组,而不是在函数中.push上去重新赋值的杀手数组。后来改用了师兄的一个方法:
a.filter(function(val){ return b.indexOf(val) >= 0 ;});
这个就没有问题,搞了多半天的时间就在查问题出在哪儿,但是最后找到新方法后也就不了了之了。
收获:对于如何提取数组中的相关数据有了新的认识,尤其以前只是在看书时有点理解,但是没想到实际引用时,可以使用到很多以前看到的知识点,都可以作为条件判断或者数组中的修改的方法。
评论