_.dropRightWhile源码疑惑

发布于 2022-09-13 00:34:37 字数 427 浏览 37 评论 0

截屏2021-07-11 上午11.36.08.png
截屏2021-07-11 上午11.34.53.png
_.dropRightWhile说第二个参数是Function,但是不是Function也能行,并且在源码中看不出来哪里有对这个进行处理
是不是什么lodash-cli会生成最终代码
截屏2021-07-11 下午12.25.22.png
然后这个是怎么生成的,为啥源码跟真实的最终代码是有出入的

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

国粹 2022-09-20 00:34:37

我不知道你在哪看到代码哈,以当前 4.17.15 版为例(传送门),你一路跟下去就能看到咋处理的了。

image.png

可以看到 predicate 这个参数经过 getInteratee() 方法处理,那么跟下去:

image.png

可以看到 arguments[0](也就是前面的 predicate) 又传给了 result()(也就是上面一行三元表达式里的 baseIteratee()),继续:

image.png

可以看到这里做了一个判断,如果传入的 value(也就是前面的 predicate)是个 function 则直接返回,否则要通过 baseMatches() / baseMatchesProperty() 方法处理。

后面的代码我就不贴了,题主有兴趣可以自己跟一下。


【补充】

image.png

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文