lodash(二)对象+循环遍历+排序
前言:
lodash(一)中只是研究了array中的多种方法,接下来就是经常用到的循环遍历问题
过程:
1.
_.forEach(collection, [iteratee=_.identity], [thisArg]) 遍历
_.forEach([22,33,11,55],function (value) {//若一个参数,返回的便是其value值
console.log(value);//22 33 11 55
});
_.forEach([22,33,11,55],function (value,index) {//这里规定的就是第一个参数返回的是value值,第二个参数是下标index
console.log(value);
});
2._.sortBy(collection, [iteratee=_.identity], [thisArg]) 排序匿名函数+字符串
var arr = [
{name: 'bb',age:23},
{name: 'aa',age:22}
]; var arrSortResult = _.sortBy(arr, function(item){
return item.name;
});
_.forEach(arrSortResult, function(item){
console.log(item.name); //aa bb
});
var strSortResult = _.sortBy('cda').join('');//join()方法 方法用于把数组中的所有元素放入一个字符串。元素是通过指定的分隔符进行分隔的。
console.log(strSortResult);//acd
3.
_.sortedIndex(array, value, [iteratee=_.identity], [thisArg])
参数:array (Array): 需要检查的数组 value (*): 插入的判断参数 [iteratee=_.identity] (Function|Object|string): 遍历方法 [thisArg] (*): iteratee的绑定值
var collection = ['a', 'b', 'c', 'd', 'f'];
console.log('before: ' + collection.join(' '));//before: a b c d f
var toBeInserted = 'e';
var sortedIndex = _.sortedIndex(collection, toBeInserted);
console.log("This is sortedIndex:"+sortedIndex);//This is sortedIndex:4
collection.splice(sortedIndex, 0, toBeInserted);
console.log('after:' + collection.join(' '));//after:a b c d e f
后言:
只是简单了解了一下关于lodash部分,却发现使用它可以快速解决自己之前遇到的很多问题,希望以后工作中可以应用自如。
lodash(二)对象+循环遍历+排序的更多相关文章
- JavaScript基础精华03(String对象,Array对象,循环遍历数组,JS中的Dictionary,Array的简化声明)
String对象(*) length属性:获取字符串的字符个数.(无论中文字符还是英文字符都算1个字符.) charAt(index)方法:获取指定索引位置的字符.(索引从0开始) indexOf(‘ ...
- jquery中object对象循环遍历的方法
一个朋友问对象如何转为数组,当我问他为啥要转得时候,他告诉我,数组可以用js循环遍历,而对象则不可以.其实呢,对象同样可以循环遍历的啊.不用转换也可以循环!说明你对js或者jquery的某些操作不是很 ...
- Iterator(迭代器)接口 --对象循环遍历
<?php class MyIterator implements Iterator { private $var = array(); public function __construct ...
- 编写高质量代码改善C#程序的157个建议[动态数组、循环遍历、对象集合初始化]
前言 软件开发过程中,不可避免会用到集合,C#中的集合表现为数组和若干集合类.不管是数组还是集合类,它们都有各自的优缺点.如何使用好集合是我们在开发过程中必须掌握的技巧.不要小看这些技巧,一旦在开 ...
- Java基础知识强化之集合框架笔记46:Set集合之TreeSet存储自定义对象并遍历练习2(自然排序:Comparable)
1. TreeSet存储自定义对象并遍历练习2: (1)Student.java package cn.itcast_06; /* * 如果一个类的元素要想能够进行自然排序,就必须实现自然排序接口 * ...
- Java基础知识强化之集合框架笔记45:Set集合之TreeSet存储自定义对象并遍历练习1(自然排序:Comparable)
1. 自然排序: TreeSet会调用集合元素的compareTo(Object obj)方法来比较元素之间的大小关系,然后将集合元素按照升序排列,这种方式就是自然排序. Java中提供了一个Comp ...
- JS完成页面跳转并传参的方法|附加:循环遍历对象
此方法只能传递较少参数 方法如下: <a href='page/index.html'>跳转</a> 以上是正常写法,如果要传参按一下写法: <!--参数写在?后面,多个 ...
- JavaSE中Collection集合框架学习笔记(3)——遍历对象的Iterator和收集对象后的排序
前言:暑期应该开始了,因为小区对面的小学这两天早上都没有像以往那样一到七八点钟就人声喧闹.车水马龙. 前两篇文章介绍了Collection框架的主要接口和常用类,例如List.Set.Queue,和A ...
- for/in 循环遍历对象的属性
for/in 语句循环遍历对象的属性. js中获取key得到某对象中相对应的value的方法:obj.key js中根据动态key得到某对象中相对应的value的方法有二: 一.var key = & ...
随机推荐
- windows下好用的markdown编辑器
Markdown是一种用来写作的轻量级[标记语言],它用简洁的语法代替了排版.字体设置,使我们可以专心写作,目前被越来越多的开发者,写作爱好者使用.Markdown的语法十分简单,常用的标记不超过十个 ...
- python学习笔记(18)--eclipse更换主题
说明: 1. 在eclipse marketplace 搜索color ide pack安装 2. 参考文章和评论http://blog.csdn.net/wusuopubupt/article/de ...
- Java程序员面试之葵花宝典
程序员面试之葵花宝典 1.面向对象的特征有哪些方面 抽象:抽象就是忽略一个主题中与当前目标 无关的那些方面, 以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而 只是选择其中的一部 ...
- HttpClient-4.3.X 中get和post方法使用
转自:http://linhongyu.blog.51cto.com/6373370/1538672 一.简介 HttpClient是Apache Jakarta Common下的子项目,用来提供高效 ...
- C语言 · 运用结构体的排序方法
之前遇到排序只想着最原始的方法,诸如冒泡,选择,快速排序等等,刚刚跟大牛学会了结构体的方法来排序,这样的话以后再也不用怕成绩统计.名次排序之类的题目了. 首先头文件(基于大牛的方法,本人之后做题喜欢引 ...
- Ubuntu 下新建用户后无法sudo
在ubuntu 下新建一个用户,然后发现无法使用sudo命令. sudo adduser test_username sudo passwd test_username # 这里就添加了一个用户,然后 ...
- SQL Server查询某个字段存在哪些表中
一.查询SQL Server中所有的表 SQL语句:SELECT * FROM sys.tables name列表示所有的表名. 二.查询SQL Server中所有的列 SQL语句:SELECT * ...
- Ajax-ajax实例4-多级联动菜单
项目结构: 项目运行: 技术要点: 1.4.1 技术要点在分析具体的实现代码之前,先介绍一下本例的几个技术要点.1 .选项的动态创建与删除document 对象的 createElement 方法可以 ...
- Laravel Debugbar
Installation Require this package with composer: composer require barryvdh/laravel-debugbar After up ...
- 【R】用 ggplot2 绘制漂亮的分级统计地图
最近我一直尝试利用R绘制地图,我从网上找到了上百种不同的实现方法,然而其中却没有适用于我的数据的方法.最终,我从以下几个博客[1]中找到了灵感.我在整合这些资源的基础上,通过不断的试验和修正得到了一个 ...