我希望您能提供一个纯JavaScript的解决方案。
假设我有一个带有以下标题的函数:
generateEmail(firstName, lastname, provider)
我需要以这种方式运行它:
generateEmail("John","Smith","gmail.com");
我希望你能够使用参数映射而不是位置参数来调用它,即:
generateEmail({
"firstName":"John",
"lastname": "Smith",
"provider": "gmail.com"
});
我正在寻找一个JavaScript已经写好的解决方案来处理这个问题,因为我有无限数量的函数,比如上面的generateEmail函数。是否存在这样的库?
我看到https://github.com/kilianc/node-introspect,它处理函数内省(返回函数的抽象参数信息)。但第二部分缺失 - 将映射调用映射为位置调用。
请告诉我是否存在这样的东西。
编辑:如果我没有表述清楚:我不想修改原始的位置参数函数。我从外部提供程序获取这些函数,并且可能会更新他们的代码。我更喜欢拥有一个包装器,可以在原始函数下调用,同时在外部提供一个映射参数API。
firstName
是否为一个对象,然后使用合适的参数再次调用generateEmail
方法。 - Gaurang Tandon.apply
的组合是可能的。 - Evan Knowles.apply
;主要是我知道如何编写这样的东西,但我不喜欢重复造轮子 :) 我更喜欢使用现有的解决方案。 - ducin