发表于: 2017-04-05 22:08:25

4 1037


一,今天完成的事情

(1)一直觉得自己原生Javascript的基础不太扎实,任务四做的很吃力,于是早上评完日报之后开始刷廖雪峰的教程,巩固了下基础知识,一直看到闭包觉得理解起来较为吃力,效率较低就先没看了。get到了map和reduce,这两个高级函数蛮好用的,map可以对一个数组里面的东西全部执行自定义的操作,比之前要用到循环简单很多,这个推荐韩阳看看,对他想解决一步到位的问题有帮助。reduce对数组做累计运算,简单来讲就是类似如下的表达式。

[x1, x2, x3, x4].reduce(f) = f(f(f(x1, x2), x3), x4)

(2)学到了把函数赋值给一个变量,var abr = fn;还有一个就是对象,对象也可以写成var abr:function().然后回过头来看下面的这个状态机,发现TMD就是写成了一个对象,然后把变量指定函数!!我的天,一下子就看懂了这个是干嘛用的,需要怎么调用,果然做不动去看看书是有好处的。

var menu = {
//当前状态
   currentState: 'killer',

   //绑定事件
   initialize: function() {
var self = this;
       self.on("click", self.transition);
   },

   //转换状态
   transition: function () {
switch (this.currentState) {
case "killer":
this.currentState = 'dead';
               change();
               break;
           case "dead":
this.currentState = 'killer';
               change();
           default:
console.log("Invalid State");
               break;
       }
}
};

(3)下午开始写法官页面,点击其中一个按钮,让之前的那个按钮的onclick alert(“请进行下一步操作”),下一个按钮的onclick alert(“请顺序操作”)。把按钮分为两种状态,一种点击后,一种点击前,写在一个变量里面,用sessionStorage储存,跳转回来之后还能保持住状态。

(4)杀手杀人页面的需求分析了下,1.点击图标后点击确定。

       杀人改变人的生死状态,死之后的图标背景色变化,且再点击会提醒玩家死亡无法操作,活着的点击事件和死了不同。

        杀手无法自相残杀,弹窗提醒。


二,明天要做的事情

完成任务四的JS版本。

三,遇到的问题

函数传参,调用的问题,写好的函数this指向不是很懂,后来问了二大才搞懂这个东西。

四,收获

1.完成了法官台本页面的逻辑,点击事件,存储变量。

2.理清了杀手杀人页面的需求。

3.学到了map和reduce操作,温习了下之前学的数组(如何操作数组,push,pop等函数),对象这些知识点。



返回列表 返回列表
评论

    分享到