3.17 sortedIndex

3.17.1语法

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

3.17.2说明

使用二分查找确定value在list中的位置序号,value按此序号插入能保持list原有的排序。如果提供iterator函数,iterator将作为list排序的依据,包括你传递的value 。iterator也可以是字符串的属性名用来排序(比如length)。

3.17.3示例

示例一:不传iteratee参数


var arr=[10, 20, 30, 40, 50];
var res =_.sortedIndex(arr, 35);
console.log(res);
//=>3

示例二:传iteratee参数


//参数为age,则以age为依据排序
var stooges = [{name: 'moe', age: 40}, {name: 'curly', age: 60}];
_.sortedIndex(stooges, {name: 'larry', age: 50}, 'age');
//=> 1

//参数为name,则以name为依据排序
var stooges = [{name: 'moe', age: 40}, {name: 'curly', age: 60}];
var res = _.sortedIndex(stooges, {name: 'larry', age: 50}, 'name');
console.log(res);
//=> 2

[context]这个参数是干什么用的呢?to郭哥。。。