[Javascript + lodash] sortBy and sortedIndex

sortBy:

var collection = ['John', 'Petteri', 'Antti', 'Joonas', 'Zhentian'];
var sorted = _.sortBy(collection);

//[ 'Antti', 'John', 'Joonas', 'Petteri', 'Zhentian' ]

 

var collection = ['John', 'Petteri', 'Antti', 'Joonas', 'Zhentian'];
var sorted = _.sortBy(collection).reverse();

//[ 'Zhentian', 'Petteri', 'Joonas', 'John', 'Antti' ]

 

var collection = [
    {age: 90, name: "Zach"},
    {age: 33,name: "Beth"},
    {age: 8,name: "Yolanda"},
    {age: 57,name: "Chris"},
    {age: 80,name: "Abe"}
];

var sorted = _.sortBy(collection, "age");

/*
[ { age: 8, name: 'Yolanda' },
  { age: 33, name: 'Beth' },
  { age: 57, name: 'Chris' },
  { age: 80, name: 'Abe' },
  { age: 90, name: 'Zach' } ]

*/

 

sortedIndex:

var collection = [
    {age: 90, name: "Zach"},
    {age: 33,name: "Beth"},
    {age: 8,name: "Yolanda"},
    {age: 57,name: "Chris"},
    {age: 80,name: "Abe"}
];

var newGuy = {age: 26, name: "Wan"};

var sortedCollection = _.sortBy(collection, "age");
console.log(sortedCollection);

//Want to insert an new guy, first find his a position in the array
var index = _.sortedIndex(sortedCollection, newGuy, "age");
console.log(index);  // 1

//insert into the array.
sortedCollection.splice(index, 0, newGuy);

/*
[ { age: 8, name: 'Yolanda' },
  { age: 26, name: 'Wan' },
  { age: 33, name: 'Beth' },
  { age: 57, name: 'Chris' },
  { age: 80, name: 'Abe' },
  { age: 90, name: 'Zach' } ]
*/

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值