_.pick(object, [props])

创建一个从object中选中的属性的对象。

示例:

var object = { 'a': 1, 'b': '2', 'c': 3 };

_.pick(object, ['a', 'c']);
// => { 'a': 1, 'c': 3 }

_.cloneDeep(value)

深拷贝value

示例:

var objects = [{ 'a': 1 }, { 'b': 2 }];

var deep = _.cloneDeep(objects);
console.log(deep[0] === objects[0]);
// => false

_.filter(collection, [predicate=_.identity])

遍历集合中的元素,筛选出一个经过predicate检查结果为真值的数组,predicate会传入3个参数:(value, index|key, collection)

示例:

var resolve = _.partial(_.map, _, 'user');

var users = [
{ 'user': 'barney', 'age': 36, 'active': true },
{ 'user': 'fred', 'age': 40, 'active': false }
]; resolve( _.filter(users, function(o) { return !o.active; }) );
// => ['fred'] // 使用了 `_.matches` 的回调结果
resolve( _.filter(users, { 'age': 36, 'active': true }) );
// => ['barney'] // 使用了 `_.matchesProperty` 的回调结果
resolve( _.filter(users, ['active', false]) );
// => ['fred'] // 使用了 `_.property` 的回调结果
resolve( _.filter(users, 'active') );
// => ['barney']

_.partial(func, [partials])

创建一个函数。该函数调用func,并传入预设的参数,默认以_作为附加部分参数的占位符。

示例:

var greet = function(greeting, name) {
return greeting + ' ' + name;
}; var sayHelloTo = _.partial(greet, 'hello');
sayHelloTo('fred');
// => 'hello fred' // 使用了占位符
var greetFred = _.partial(greet, _, 'fred');
greetFred('hi');
// => 'hi fred'

_.get(object, path, [defaultValue])

根据对象路径获取值。如果解析value是undefined会以defaultValue取代

示例:

var object = { 'a': [{ 'b': { 'c': 3 } }] };

_.get(object, 'a[0].b.c');
// => 3 _.get(object, ['a', '0', 'b', 'c']);
// => 3 _.get(object, 'a.b.c', 'default');
// => 'default'

_isObject(value)

检查value是否是object的类型(包括arrays, functions, objects, regexes, new Number(0),new String(''))

示例:

_.isObject({});
// => true _.isObject([1, 2, 3]);
// => true _.isObject(_.noop);
// => true _.isObject(null);
// => false

_.isObjectLike(value)

检查value是否是类对象。类对象是指typeof结果为“object”的对象,除了null

示例:

_.isObjectLike({});
// => true _.isObjectLike([1, 2, 3]);
// => true _.isObjectLike(_.noop);
// => false _.isObjectLike(null);
// => false

_.isArray(value)

检查value是否是Array类对象

示例:

_.isArray([1, 2, 3]);
// => true _.isArray(document.body.children);
// => false _.isArray('abc');
// => false _.isArray(_.noop);
// => false

_.isArrayLike(value)

检查value是否是类数组。类数组不能是一个函数,并且value.length是个大于等于0、小于等于Number.MAX_SAFE_INTEGER的整数

目前我知道的类数组有HTMLCollection、NodeList、arguments

示例:

_.isArrayLike([1, 2, 3]);
// => true _.isArrayLike(document.body.children);
// => true _.isArrayLike('abc');
// => true _.isArrayLike(_.noop);
// => false

学习笔记:_lodash.js常用函数2的更多相关文章

  1. 学习笔记:_lodash.js常用函数

    _lodash.js 文档:https://www.lodashjs.com/docs/4.17.5.html _.compact(array) 创建一个移除了所有假值的数组 什么是假值?false, ...

  2. Oracle学习笔记六 SQL常用函数

    函数的分类 Oracle 提供一系列用于执行特定操作的函数 SQL 函数带有一个或多个参数并返回一个值 以下是SQL函数的分类:

  3. MySQL学习笔记(三):常用函数

    一:字符串函数 需要注意的几个细节: 1.cancat中有一个字符串为null,则结果为null. 2.left(str,x) 和 right(str,x)中x为null,则不返回任何字符串,不是nu ...

  4. amazeui学习笔记--css(常用组件12)--面板Panel

    amazeui学习笔记--css(常用组件12)--面板Panel 一.总结 1.面板基本样式:默认的 .am-panel 提供基本的阴影和边距,默认边框添加 .am-panel-default,内容 ...

  5. amazeui学习笔记--css(常用组件9)--导航nav

    amazeui学习笔记--css(常用组件9)--导航nav 一.总结 1.导航基本使用:<ul> 添加 .am-nav class 以后就是一个基本的垂直导航.默认样式中并没有限定导航的 ...

  6. Hadoop源码学习笔记(2) ——进入main函数打印包信息

    Hadoop源码学习笔记(2) ——进入main函数打印包信息 找到了main函数,也建立了快速启动的方法,然后我们就进去看一看. 进入NameNode和DataNode的主函数后,发现形式差不多: ...

  7. docker学习笔记二:常用命令

    docker学习笔记二:常用命令 查看docker常用命令 docker --help 返回结果如下: 其中常用的命令如下: 1.image相关操作 展示所有的image: 删除image: rmi ...

  8. ecshop里提出来的js常用函数

    目录 Utils.js jquery.listTable.js 使用例子: ecshop里提出来的js常用函数 Utils.js /* $Id : utils.js 5052 2007-02-03 1 ...

  9. amazeui学习笔记--css(常用组件16)--文章页Article

    amazeui学习笔记--css(常用组件16)--文章页Article 一.总结 1.基本使用:文章内容页的排版样式,包括标题.文章元信息.分隔线等样式. .am-article 文章内容容器 .a ...

随机推荐

  1. OPENCV(2) —— Basic Structures(二)

    Mat OpenCV C++ n-dimensional dense array class The class Mat represents an n-dimensional dense numer ...

  2. How Blink works

    How Blink works Author: haraken@ Last update: 2018 Aug 14 Status: PUBLIC Working on Blink is not eas ...

  3. linux下支持托盘的邮件客户端Sylpheed

    在网上搜索了很多客户端想支持系统托盘,发现一个很不错的邮件客户端Sylpheed.设置方式和foxmail很像,最为重要的是支持系统托盘,很方便,默认没有开启,简单设置下:配置->通用首选项-& ...

  4. 如何在Ubuntu14.04中创建Python虚拟环境

    在Ubuntu14.04中安装Python相对比较容易些,最简单的安装方法就是apt-get安装了,具体的教程可以戳这篇文章:在Ubuntu14.04中如何安装Python3和切换py2和py3环境. ...

  5. Spring 热点面试题:

    1.谈谈你对Springaop的理解? spring用代理类包裹切面,把他们织入到Spring管理的bean中.也就是说代理类伪装成目标类,它会截取对目标类中方法的调用,让调用者对目标类的调用都先变成 ...

  6. Ajax学习总结(1)——Ajax实例讲解与技术原理

    摘要:AJAX即"Asynchronous Javascript And XML"(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术.AJAX 是一种用 ...

  7. You have ettempted to queue to many files.You may select one files.

    <script type="text/javascript" src="/script/swfupload/swfupload.js"></s ...

  8. StdTranslator - Translate PDMS to STD for STAAD.Pro

    StdTranslator - Translate PDMS to STD for STAAD.Pro eryar@163.com STAAD.Pro是由美国世界著名的工程咨询和CAD软件开发公司—R ...

  9. HDOJ 5414 CRB and String 模拟

    CRB and String Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) T ...

  10. spring源码分析之@Conditional

    根源在AnnotationConfigApplicationContext和AnnotationConfigWebApplicationContext,以AnnotationConfigApplica ...