gpt4 book ai didi

javascript - javascript中是否有indexOf可以使用自定义比较函数搜索数组

转载 作者:行者123 更新时间:2023-12-02 23:25:55 25 4
gpt4 key购买 nike

我需要数组中与自定义比较函数匹配的第一个值的索引

非常好underscorej有一个“查找”函数,它返回函数返回 true 的第一个值,但我需要这个函数返回索引。是否有可用的 indexOf 版本,我可以在其中传递用于比较的函数?

感谢您的建议!

最佳答案

这是 Underscore 的实现方式 - 这通过接受迭代器函数来增强核心 Underscore 函数:

// save a reference to the core implementation
var indexOfValue = _.indexOf;

// using .mixin allows both wrapped and unwrapped calls:
// _(array).indexOf(...) and _.indexOf(array, ...)
_.mixin({

// return the index of the first array element passing a test
indexOf: function(array, test) {
// delegate to standard indexOf if the test isn't a function
if (!_.isFunction(test)) return indexOfValue(array, test);
// otherwise, look for the index
for (var x = 0; x < array.length; x++) {
if (test(array[x])) return x;
}
// not found, return fail value
return -1;
}

});

_.indexOf([1,2,3], 3); // 2
_.indexOf([1,2,3], function(el) { return el > 2; } ); // 2

关于javascript - javascript中是否有indexOf可以使用自定义比较函数搜索数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12356642/

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