发表于: 2017-03-14 02:27:04

1 1321


今天完成的事情:

继续看了忍者书中的挥舞函数、闭包;

把vue项目完成了;

明天计划的事情:

看忍者书的原型与面向对象;

升级vue2,打包app;

遇到的问题:

使用last-child属性选择器配合v-for,发现样式绑定到本该在最下面被过滤掉的item上了;

收获:

使用keep-alive可以保持vue的路由中的未变化数据,路由跳转回来不会消失;

不愧是jquery的作者,this、闭包用的太6:

ninja柯里化:

Function.prototype.partial=function(){
    var fn=this,args=Array.prototype.slice.call(arguments);
    return function(){
        var arg=0;
        for(var i=0;i<args.length&&arg<arguments.length;i++){
            if(args[i]===undefined){
                args[i]=arguments[arg++];
            }
        }
        return fn.apply(this,args);

    }

var bindClick=document.body.addEventListener.partial("click",undefined,false);

bindClick=(function(){
    console.log(true,"Click event bound via curried function");

});


ninja记忆函数:

Function.prototype.memoized=function(key){
        this._values=this._values||{};
        return this._values[key]!==undefined?this._values[key]:this._values=this.apply(this,arguments)
    }
    Function.prototype.memoize=function(){
        var fn=this;
        return function(){
            return fn.memoized.apply(fn,arguments);
        }
    }
    var isPrime=(function(num){
        var prime=num!=1;
        for(var i=2;i<num;i++){
            if(num%i==0){
                prime=false;
                break;
            }
        }
        return prime;
    }).memoize();



返回列表 返回列表
评论

    分享到