gpt4 book ai didi

javascript - Underscore.js findLast() 方法

转载 作者:数据小太阳 更新时间:2023-10-29 04:27:46 26 4
gpt4 key购买 nike

Underscore.js 是否有 findLast() 方法或等效方法?

最好的方法是什么.find()但返回集合中匹配的最后一项?

最佳答案

反转列表,然后使用find:

_.find(list.slice().reverse(), iterator);

阅读 MDN 以获取有关 reverse 的文档.


不幸的是,下划线中的集合可能是数组或对象。如果您的收藏是一个数组,那么您很幸运。您可以使用 reverse。但是,如果它是一个对象,那么您需要改为这样做:

_.find(Object.keys(list).reverse(), function (key) {
return iterator(list[key], key, list);
});

您可以为自己编写一个findLast 函数:

_.mixin({
findLast: function (list, iterator, context) {
if (list instanceof Array)
return _.find(list.slice().reverse(), iterator, context);
else return _.find(Object.keys(list).reverse(), function (key) {
return iterator.call(context, list[key], key, list);
});
}
});

现在您可以像使用任何其他下划线方法一样使用 findLast

关于javascript - Underscore.js findLast() 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18602325/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com