我们相信:世界是美好的,你是我也是。平行空间的世界里面,不同版本的生活也在继续...

在以前的文章中,苏南大叔写过python下,有个非常特殊的函数使用方式,那就是函数的实参分为两次传递,利用的函数叫做functools.partial()。在本文中,在javascript编程下,也有个非常类似的用法,可以先传入一个参数,生成一个新函数,剩下的参数,再传一次。

苏南大叔:javascript,如何隐式的为函数传入一个默认参数? - 隐式传入默认参数
javascript,如何隐式的为函数传入一个默认参数?(图2-1)

大家好,这里是苏南大叔的平行空间笔记本博客,这里记录苏南大叔和计算机代码的故事。本文描述了一个js编程中的一个非常特殊的用法,函数的参数分开传递调用。测试环境:node@16.14.2

前文回顾

前文是python环境下的,参考代码:

import functools
def fn(args1, args2):
    if(args1 == ""):
        raise TypeError
    return [args1, args2]

fn2 = functools.partial(fn, "a1")  # 新的函数fn2
print(fn2("a2"))                   // ["a1","a2"]

参考链接:

在这段代码中,fn函数需要两个形参,先传入了第一个参数a1,得到了一个新的函数fn2,然后传入第一个参数a2,最终输出["a1","a2"]

重点内容:js代码

js代码,实现上面的类似逻辑,代码如下:

function fn(a){
    return function _fn(b){
        console.log(a,b);
    }
}
var fn2 = fn("a1");
fn2("a2");          // ["a1","a2"]

在这个例子中,函数fn2中,并没有显式的传入a1的字样,但是确实在结果中输出了出来。也就是说,参数分开进行了传递。先传入参数a1,得到了一个新的函数fn2,再调用fn2函数。

苏南大叔:javascript,如何隐式的为函数传入一个默认参数? - 函数分开传参数
javascript,如何隐式的为函数传入一个默认参数?(图2-2)

相关文章

总结

更多js代码经验文章,请点击:

如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。

 【福利】 腾讯云最新爆款活动!1核2G云服务器首年50元!

 【源码】本文代码片段及相关软件,请点此获取更多信息

 【绝密】秘籍文章入口,仅传授于有缘之人   js