发表于: 2016-12-19 23:49:47

0 1468


今天完成的事:

    1. 基本完成了task4,一整天都在整理逻辑,学习面向对象的写法,写完之后感觉有些不伦不类的,但是逻辑还是没问题的.

明天计划的事情:

    1. 开始task5,学习js的ajax请求.

遇到的问题:

    1. 昨天this的问题很困扰,今天又细细的看了一遍.

        this总是返回一个对象,简单说,就是返回属性或方法“当前”所在的对象,如果一个函数在全局环境中运行,那么this就是指顶层对象(浏览器中为window对象)

  this的使用可以分成以下几个场合。

 (1)全局环境

  在全局环境使用this,它指的就是顶层对象window。

 (2)构造函数

  构造函数中的this,指的是实例对象。

 (3)对象的方法

    当A对象的方法被赋予B对象,该方法中的this就从指向A对象变成了指向B对象。所以要特别小心,将某个对象的方法赋值给另一个对象,会改变       this的指向。

 使用的注意点

 (1)避免多层this

 由于this的指向是不确定的,所以切勿在函数中包含多层的this;

 (2)避免数组处理方法中的this

 数组的map和foreach方法,允许提供一个函数作为参数。这个函数内部不应该使用this。

 (3)避免回调函数中的this

 回调函数中的this往往会改变指向,最好避免使用。

 2.在写一个逻辑之前可以尝试理一个逻辑流程图出来,实现的目的,用到的变量,变量创建的环节,更改的环节,调用的环节,是否需要返回到别的地方去

  ,别的地方是不是需要更改值.主要还是思路的问题,不被自己代码绕晕逻辑基本就不会乱.

 3.还是有一些重复的代码,等js在熟练一些再来更改.



    

收获:

 1. 更改了页面的bug,各种获取不到值后实现完整的游戏.

 2. 对于页面逻辑的实现方法,就是理清思路,在细分拆解,分成一个一个的判断,循环,传递和更改值得过程,

     不能是一步到位的想法.

 3. 面向对象this关键字的作用,用法和一些基本的注意点.

 4. 简要的看了一些ajax,以备明天的task5.



返回列表 返回列表
评论

    分享到