[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); // //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' } ]
*/
[Javascript + lodash] sortBy and sortedIndex的更多相关文章
- [Javascript] Lodash: Refactoring Simple For Loops (_.find, _.findLast, _.filter)
This lesson shows how to refactor your old loops into using a simpler and more powerful lodash-style ...
- [Javascript] lodash: memoize() to improve the profermence
Link: https://lodash.com/docs#memoize Example: .service('UserPresenter', function(UserConstants){ va ...
- npm lodash
在数据操作时,Lodash 就是我的弹药库,不管遇到多复杂的数据结构都能用一些函数轻松拆解. ES6 中也新增了诸多新的对象函数,一些简单的项目中 ES6 就足够使用了,但还是会有例外的情况引用了少数 ...
- nodejs lodash的一些函数
1 _.compact用法 _.compact([0, 1, false, 2, '', 3,'mm']); var test = _.compact([-1,0, 1, false, 2, ...
- underscore.js框架使用
Underscore.js是一个很精干的库,压缩后只有4KB.它提供了几十种函数式编程的方法,弥补了标准库的不足,大大方便了JavaScript的编程.MVC框架Backbone.js就将这个库作为自 ...
- 小小改动帮你减少bundle.js文件体积(翻译)
我已经从事过好多年的SPA开发工作,我发现很多的程序猿都从来不往 bundle.js 文件的体积上动脑筋,这让我有点懵逼. “安心洗路,等俺把代码混淆压缩后就一切666了”,若是有人这么说,我会翻白眼 ...
- underscore.js 一个强大的js函数库
Underscore提供的100多个函数,主要涉及对Collection.Object.Array.Function的操作: Collections(集合) each, map, reduce, re ...
- webpack使用
Webpack是一个现代js应用的模块打包机.如果一个文件依赖另一个文件,webpack认为这就存在一个依赖关系.不管另一个文件是什么内容,image,css或js都被当作一个模块.Webpack从e ...
- Currying 及应用
Currying,中文多翻译为柯里化,感觉这个音译还没有达到类似 Humor 之于幽默的传神地步,后面直接使用 Currying. 什么是 Currying Currying 是这么一种机制,它将一个 ...
随机推荐
- css padding在ie7、ie6、firefox中的兼容问题
padding 简写属性在一个声明中设置所有内边距属性. 说明这个简写属性设置元素所有内边距的宽度,或者设置各边上内边距的宽度.行内非替换元素上设置的内边距不会影响行高计算:因此,如果一个元素既有内边 ...
- POJ 3281 Dining (网络流构图)
[题意]有F种食物和D种饮料,每种食物或饮料只能供一头牛享用,且每头牛只享用一种食物和一种饮料.现在有N头牛,每头牛都有自己喜欢的食物种类列表和饮料种类列表,问最多能使几头牛同时享用到自己喜欢的食物和 ...
- Java [leetcode 15] 3Sum
问题描述: Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find ...
- guake默认快捷键
toggle guake visibility 切换guake可见 :F12 toggle fullscreen 切换全屏幕 :F11 quit 退出 :Shift+Ctrl+Q new ...
- 使用SQL Server 2005作业设置定时任务
公司有一个老项目由于直接把终端拍摄的图片以二进制的形式保存到数据库中,数据库比较大所以需要经常删除这些冗余数据,手动删除费时费力,项目组长让我把这些操作变成自动的,每天执行一次,只保留最近两个月的图片 ...
- MVC Action Filter
ASP.NET MVC Framework支持四种不同类型的Filter: Authorization filters – 实现IAuthorizationFilter接口的属性. Action fi ...
- 发送复杂的HTTP GET请求并且取回响应。
设计思想: 创建一个HttpWebRequest类的实例,并通过GetReponse()方法取回响应的HTTP响应. 实例方案: string url="http://www.baidu.c ...
- 【译】 AWK教程指南 3计算并打印文件中指定的字段数据
awk 处理数据时,它会自动从数据文件中一次读取一条记录,并会将该记录切分成一个个的字段:程序中可使用 $1, $2,... 直接取得各个字段的内容.这个特色让使用者易于用 awk 编写 reform ...
- 命令ls
ls -a 显示所有文件,包括隐藏文件(.开头的文件,配置文件常为隐藏文件)ls -l 显示详细信息ls -R 递归显示子目录结构ls -ld 显示目标目录的详细信息(并不返回目录里的内容)
- 7.OpenACC
OpenACC: openacc 可以用于fortran, c 和 c++程序,可以运行在CPU或者GPU设备. openacc的代码就是在原有的C语言基础上进行修改,通过添加:compiler di ...