lodash常用函数 - Array、Collection

lodash版本 v3.10.1

1.Array、Collection

pull

移除数组中满足条件的元素

var array = [1, 2, 3, 1, 2, 3];
_.pull(array, 2, 3);
// => [1, 1]

slice

从start位置到 end(但不包含end位置),截取 array数组

_.slice([1, 2, 3, 1],2,3)
// => [3]

difference

排除第一个数组中不包含第二个数组的值

_.difference([1, 2, 3], [4, 2]);
// => [1, 3]

findIndex

返回符合条件的元素的索引,没有找到返回-1

var users = [
{ 'user': 'barney', 'active': false },
{ 'user': 'fred', 'active': false },
{ 'user': 'pebbles', 'active': true }
];
_.findIndex(users, 'active', false);
// => 0

drop

将数组中的前n(默认是1)个元素去掉,返回剩余部分

_.drop([1, 2, 3], 2);
// => [3]

xor

取出各数组中不等的元素

_.xor([1, 2], [4, 2]);
// => [1, 4]

intersection

取出各数组中全等的元素

_.intersection([1, 2], [4, 2], [2, 1]);
// => [2]

remove

删掉满足条件的元素

var array = [{name:'年龄',value:'34'},{name:'年龄',value:'20'},{name:'年龄',value:''}];
_.remove(array, function(item) {
return item.value == '';
})
//[{name:'年龄',value:'34'},{name:'年龄',value:'20'}]

union

合并各数组的值,返回新数组

_.union([1, 2], [4, 2], [2, 1]);
// => [1, 2, 4]

uniq

去除数组中的重复元素

_.uniq([2, 1, 2]);
// => [2, 1]

pluck

取出json数组中某个属性的值,组成一个新数组返回

var users = [
{ 'user': 'barney', 'age': 36 },
{ 'user': 'fred', 'age': 40 }
]; _.pluck(users, 'user');
// => ['barney', 'fred']

zipObject

由两个数组的元素配对组成一个新的对象

_.zipObject(['fred', 'barney'], [30, 40]);
// => { 'fred': 30, 'barney': 40 }

filter

以新数组形式返回数组中满足条件的元素

_.filter([4, 5, 6], function(n) {
return n % 2 == 0;
});
// => [4, 6] var users = [
{ 'user': 'barney', 'age': 36, 'active': true },
{ 'user': 'fred', 'age': 40, 'active': false }
];
_.pluck(_.filter(users, 'active', false), 'user');
// => ['fred']

find

返回数组中第一个满足条件的元素

var users = [
{ 'user': 'barney', 'age': 36, 'active': true },
{ 'user': 'fred', 'age': 40, 'active': false },
{ 'user': 'pebbles', 'age': 1, 'active': true }
]; _.result(_.find(users, function(chr) {
return chr.age < 40;
}), 'user');
// => 'barney' // using the `_.matches` callback shorthand
_.result(_.find(users, { 'age': 1, 'active': true }), 'user');
// => 'pebbles' // using the `_.matchesProperty` callback shorthand
_.result(_.find(users, 'active', false), 'user');
// => 'fred' // using the `_.property` callback shorthand
_.result(_.find(users, 'active'), 'user');
// => 'barney'

includes

判断元素是否被包含在目标集合中

_.includes([1, 2, 3], 1);
// => true _.includes([1, 2, 3], 1, 2);
// => false _.includes({ 'user': 'fred', 'age': 40 }, 'fred');
// => true _.includes('pebbles', 'eb');
// => true

indexBy

从集合中获取某一个属性值生成新对象,属性值为新对象的键

var keyData = [
{ 'dir': 'left', 'code': 97 },
{ 'dir': 'right', 'code': 100 }
]; _.indexBy(keyData, 'dir');
// => { 'left': { 'dir': 'left', 'code': 97 }, 'right': { 'dir': 'right', 'code': 100 } }

sample

从集合中随机获取n个元素,n默认为1

_.sample([1, 2, 3, 4]);
// => 2 _.sample([1, 2, 3, 4], 2);
// => [3, 1]

size

返回目标集合的长度

_.size([1, 2, 3]);
// => 3 _.size({ 'a': 1, 'b': 2 });
// => 2 _.size('pebbles');
// => 7

sortBy

根据特定规则对集合进行排序

var users = [
{ 'user': 'fred' },
{ 'user': 'pebbles' },
{ 'user': 'barney' }
]; _.pluck(_.sortBy(users, 'user'), 'user');
// => ['barney', 'fred', 'pebbles']

lodash常用函数 - Array、Collection的更多相关文章

  1. php常用数组array函数实例总结【赋值,拆分,合并,计算,添加,删除,查询,判断,排序】

    本文实例总结了php常用数组array函数.分享给大家供大家参考,具体如下: array_combine 功能:用一个数组的值作为新数组的键名,另一个数组的值作为新数组的值 案例: <?php ...

  2. PHP常用数组(Array)函数整理

    整理了一份PHP开发中数组操作大全,包含有数组操作的基本函数.数组的分段和填充.数组与栈.数组与列队.回调函数.排序.计算.其他的数组函数等. 一.数组操作的基本函数 数组的键名和值 array_va ...

  3. 【PHP】PHP常用数组(Array)函数整理

    整理了一份PHP开发中数组操作大全,包含有数组操作的基本函数.数组的分段和填充.数组与栈.数组与列队.回调函数.排序.计算.其他的数组函数等. 一.数组操作的基本函数 数组的键名和值 array_va ...

  4. Hive常用函数的使用

    Hive常用函数的使用 文章作者:foochane  原文链接:https://foochane.cn/article/2019062501.html 1 基本介绍 1.1 HIVE简单介绍 Hive ...

  5. hive常用函数 wordCount--Hive窗口函数1.1.1 聚合开窗函数聚合开窗函数实战

    第三天笔记 第三天笔记 SQL练习Hive 常用函数关系运算数值计算条件函数日期函数重点!!!字符串函数Hive 中的wordCount1.1 Hive窗口函数1.1.1 聚合开窗函数聚合开窗函数实战 ...

  6. Thinkcmf:页面常用函数

    Thinkcmf:页面常用函数 全站seo: 文章列表: {$site_seo_title}        <!--SEO标题--> {$site_seo_keywords}   < ...

  7. phpcms V9 常用函数 及 代码整理

    常用函数 及 常用代码 总结如下 <?php //转换字符串或者数组的编码 str_charset($in_charset, $out_charset, $str_or_arr) //获取菜单 ...

  8. php : 常用函数

    常用函数: <?php /** * 获取客户端IP * @return [string] [description] */ function getClientIp() { $ip = NULL ...

  9. php 数组的常用函数

    在php教程中数组是种强大的数据类型,他可以做的事情很多,可以存储不同的数据类型在一个数组中,下面我们列出了数组常用的操作,排序,键名对数组排序等做法. /* 数组的常用函数  *  * 数组的排序函 ...

随机推荐

  1. 使用python requests库写接口自动化测试--记录学习过程中遇到的坑(1)

    一直听说python requests库对于接口自动化测试特别合适,但由于自身代码基础薄弱,一直没有实践: 这次赶上公司项目需要,同事小伙伴们一起学习写接口自动化脚本,听起来特别给力,赶紧实践一把: ...

  2. 1.使用frp穿透内网

    1.前因后果 1.1弃用ngrok 为节约服务器成本,花了500多块买了一个华为云得1G 1核心 5M得云服务器.然后用ngrok来穿透内网.一直用得还  但是今天在弄nginx得时候发现 ngrok ...

  3. 3dsmax2018卸载/安装失败/如何彻底卸载清除干净3dsmax2018注册表和文件的方法

    3dsmax2018提示安装未完成,某些产品无法安装该怎样解决呢?一些朋友在win7或者win10系统下安装3dsmax2018失败提示3dsmax2018安装未完成,某些产品无法安装,也有时候想重新 ...

  4. (转)用mysql自带工具mysqlslap对数据库进行压力测试

    http://aolens.blog.51cto.com/7021142/1901557-------用mysql自带工具mysqlslap对数据库进行压力测试 mysqlslap是mysql自带的工 ...

  5. MySQL 查询结果分组 group by

    [group by {col_name | position} [ASC | DESC ]] 分组条件 [HAVING where_condition] HAVING 后面的条件必须出现在select ...

  6. Nodejs 实现windows后台运行

    首先需要到http://nssm.cc/download/?page=download 下载 nssm 下下来之后是压缩包形式的,解压之后 ctrl + R 进入cmd 命令行界面 在命令行模式下进入 ...

  7. html的img标签

    html显示图片 1.最简单: <img src="图片路径"/> 2.如果要改变图片显示的尺寸 <img src="图片路径" width= ...

  8. Struts2入门介绍(二)

    一.Struts执行过程的分析. 当我们在浏览器中输入了网址http://127.0.0.1:8080/Struts2_01/hello.action的时候,Struts2做了如下过程: 1.Stru ...

  9. TCP/IP协议簇分层详解---转

    http://blog.csdn.net/hankscpp/article/details/8611229 一. TCP/IP 和 ISO/OSI ISO/OSI模型,即开放式通信系统互联参考模型(O ...

  10. 次讲解js中的回收机制是怎么一回事。

    在前几天的一篇闭包文章中我们简单的介绍了一下闭包,但是并没有深入的讲解,因为闭包涉及的知识点比较多,为了能够更好的理解闭包,今天讲解一下关于js中的回收机制. 在初识闭包一文中我说过js中有回收机制这 ...