• 柯里化通用函数


    function curring(fn,args=[]){
          let l = fn.length
          return function(...arg){
            let newArgs = [...arg,...args]
            if(newArgs.length == l){
              return fn(...newArgs)
            }else{
              return curring(fn,newArgs)
            }
          } 
    }
    function sum(a,b,c,d){
          return a+b+c+d
    }
    let newFn = curring(sum)
    console.log(newFn(1)(2)(3)(4))
     
     
    再介绍下切片函数(因为和朋友讨论这个)
    let fn2 = function (){
                return 456
            }
            let fn1 = function(...arg){
                return arg
            }
            fn1.__proto__.before = function (fn) {  
                let that = this;  
                return function () {   
                    let a = fn2()
                    return fn.call(that,...arguments,a);   
                }
            }

            let newFn = fn1.before(fn1);
            console.log(newFn('123'))
  • 相关阅读:
    使用selenium模拟登陆12306以及滑块验证
    网络爬虫之requests模块
    网络爬虫简介
    MongoDB基础操作
    redis集群搭建以及常见问题
    redis的主从复制
    Linux下如何安装mysql
    python 序列化模块
    python os模块和sys模块
    python 时间模块
  • 原文地址:https://www.cnblogs.com/MDGE/p/13621418.html
Copyright © 2020-2023  润新知