• JS 函数式编程


    1.常例 
    // 太傻了
    var getServerStuff = function(callback){
      return ajaxCall(function(json){
        return callback(json);
      });
    };
    
    // 这才像样
    var getServerStuff = ajaxCall;

      解析:

    // 这行 hang
    return ajaxCall(function(json){
      return callback(json);
    });
    
    // 等价于这行
    return ajaxCall(callback);
    
    // 那么,重构下 getServerStuff
    var getServerStuff = function(callback){
      return ajaxCall(callback);
    };
    
    // ...就等于
    var getServerStuff = ajaxCall; // <-- 看,没有括号哦

     2.尽可能避免使用 this,结合 bind,apply 等的使用。

     3.纯函数,如 slice,相同的输入返回相同的输出;固定的变量建议设置在函数作用域内,做到自给自足,或使用冻结函数方法 Object.freeze({ a : 1 })。

      tips1:const 与 freeze 不同。

      tips2:涉及缓存 memoize 技术

      tips3:纯函数利于测试,给个输入,断言输出即可;纯函数利于移植,不关注环境,配置等。

  • 相关阅读:
    docker容器的本质
    golang 算法题 : 二维数组搜索值
    golang 算法题 : 两数相加
    golang 开源代理
    golang vue 使用 websocket 的例子
    互联网技术部门该如何管理
    大数据清洗第一天
    本周总结
    信息领域热词分析性能分析
    本周总结
  • 原文地址:https://www.cnblogs.com/yuqlblog/p/9834882.html
Copyright © 2020-2023  润新知