📜  Underscore.js _.sortedindex()函数(1)

📅  最后修改于: 2023-12-03 15:05:43.668000             🧑  作者: Mango

Underscore.js _.sortedIndex()函数介绍

Underscore.js是JavaScript工具库,提供了许多实用的函数和方法,其中之一是_.sortedIndex()函数。这个函数类似于JavaScript内置的Array.indexOf()方法,但是可以用于有序数组。

函数定义

_.sortedIndex(list, value, [iteratee], [context])

  • list - 数组(必传)。
  • value - 待插入元素(必传)。
  • iteratee - 迭代器函数(可选)。
  • context - iteratee函数的上下文(可选)。
函数作用

sortedIndex函数使用二分查找的算法在有序的集合中插入新元素,并返回新元素插入后新的索引号,该函数能够帮助我们在插入一个元素时,保持数据的有序性。

函数演示
_.sortedIndex([10, 20, 30, 40, 50], 35);
// => 3

//使用迭代器函数
var stooges = [{name: 'moe', age: 40}, {name: 'curly', age: 60}];
_.sortedIndex(stooges, {name: 'larry', age: 50}, 'age');
// => 1
函数返回值

返回插入新元素后的索引号。

注意事项
  • 如果有多个元素位置相同并且都应该在新元素的右边,则返回的索引号可能是任意一个满足条件的位置。
  • 如果添加的元素已经存在于有序数组中,则无法保证该函数会返回该元素的索引号。