• 20141104


    1.

    传统页面路由是,新到一张页面,就push一下;退回键,pop一下。

    而我当前的业务,进入一张页面,先看看路由数组中,有没有该页面,有则路由删掉该页面,然后重新push进去。

    这样做的原因是,防止用户回退时,看到过时的页面。

    2.


    无副作用的模块,
    闭包实现的私有变量,
    mixin达到的继承,
    promise/A+规范的异步操作,
    就能不错地组织JS代码了。

    什么__proto__,prototype,constructor,原型链这些概念,不必太在意。
    对象的__proto__是构造函数的protoype,
    对象的construtor是构造函数,
    构造函数的protoype的construtor是构造函数自身。

    还有Execution context,Scope chain,Closure,小小地在意一下就好。
    Execution context是函数执行的时候,生成上下文环境。
    上下文环境里有,arguments,函数内部的一些声明变量,this的值,父函数的上下文环境。
    因为有父函数的上下文环境,而父函数也有他自己的父函数上下文环境,所以有Scope chain。
    Closure嘛,就是函数创建的时候,把父函数的上下文环境加入到Scope chain,这个行为。
    优先级,原型 > 当前上下文环境 > 父级上下文环境。
    http://ued.ctrip.com/blog/?p=2795

    至于this这种既善变又常见的东西,还是稍微在意一下。
    因为this是执行上下文环境的一个属性,所以不同地方调用的函数,会导致不同的this。
    比如对象.函数的this就是对象。
    html元素绑定的事件函数,这里的this就是html元素了。
    需要注意的是,函数是引用传递,通过赋值,会生成新的函数,this自然就不一样了。
    当然,Function的call,apply方法,可以指定this的值。
    http://developer.51cto.com/art/200907/136245.htm

    对象和数组,函数是引用传递,其它是值传递要知道。

    常见的设计模式,工厂,订阅者。

  • 相关阅读:
    一周好文(15)
    一周好文(13)
    宏定义中的 "#" 和 "##"
    一周好文(14)
    CCRenderTexture崩溃问题分析
    C++反射机制的实现(转)
    一周好文(16)
    opengl on mac
    uthash: a hash table for C strcutures
    CC3LineNode线条变色的问题
  • 原文地址:https://www.cnblogs.com/samwu/p/4073789.html
Copyright © 2020-2023  润新知