Lodash 的 `_.ary` 函数有什么意义?

问题描述 投票:0回答:1

Lodash 的

_.ary
功能有什么意义?给出的例子是...

_.map(['6', '8', '10'], _.ary(parseInt, 1));

...我可以看到这很有帮助,因为

map
使用三个参数
value
index
collection
调用回调函数,而
parseInt
本身会误解
index
作为
radix
,给出了错误的结果:

[6, NaN, 2]

不过,直接写不是更简单吗...

['6', '8', '10'].map(x => parseInt(x))

...不使用Lodash?

javascript lodash
1个回答
0
投票

您当然可以编写自己的函数作为

.map()
的回调,但是
.ary()
为您提供的是强制忽略运行时传递给
.map()
回调之类的附加参数的能力。如果没有
.ary()
,运行时会向
.map()
传递 3 个参数,这可能会导致使用某些常用方法作为回调时出现问题。
_.ary()
方法“撤消”该行为,仅使用您要求的参数调用包装函数。

© www.soinside.com 2019 - 2024. All rights reserved.