在underscore中我们经常会用到的函数主要有以下这些:
each、map、filter、invoke、countBy、first、uniq、defaults
each _.each(list, iteratee, [context])
遍历list中的所有元素,按顺序用遍历输出每个元素。与for循环差多。
var a = [1,2,3]; _.each(a,function(num){}); console.log(a);//输出[1,2,3]
map _.map(list, iteratee, [context])
通过转换函数(iteratee迭代器)映射列表中的每个值产生价值的新数组。也就是通过遍历改变了值得到新的值。
_.map([1, 2, 3], function(num){ return num * 3; }); => [3, 6, 9] _.map({one: 1, two: 2, three: 3}, function(num, key){ return num * 3; }); => [3, 6, 9] _.map([[1, 2], [3, 4]], _.first); => [1, 3]
filter _.filter(list, predicate, [context])
遍历list中的每个值,返回包含所有通过predicate真值检测的元素值。
var evens = _.filter([1, 2, 3, 4, 5, 6], function(num){ return num % 2 == 0; }); => [2, 4, 6]
invoke_.invoke(list, methodName, *arguments)
在list的每个元素上执行methodName方法。 任何传递给invoke的额外参数,invoke都会在调用methodName方法的时候传递给它。 也就是可以在这个函数中调用别的方法。
_.invoke([[5, 1, 7], [3, 2, 1]], 'sort'); => [[1, 5, 7], [1, 2, 3]]
countBy _.countBy(list, iteratee, [context])
排序一个列表组成一个组,并且返回各组中的对象的数量的计数。类似groupBy,但是不是返回列表的值,而是返回在该组中值的数目。 可以对数组中的元素进行计数。
_.countBy([1, 2, 3, 4, 5], function(num) { return num % 2 == 0 ? 'even': 'odd'; }); => {odd: 3, even: 2}
first _.first(array, [n])
Alias: head, take
返回array(数组)的第一个元素。传递 n参数将返回数组中从第一个元素开始的n个元素。
_.first([5, 4, 3, 2, 1]); =>5 _.first([5, 4, 3, 2, 1],[3]); =>5,4,3
uniq _.uniq(array, [isSorted], [iteratee])
对数组或对象进行去除重复。返回 array去重后的副本, 使用 === 做相等测试. 如果您确定 array 已经排序, 那么给 isSorted 参数传递 true值, 此函数将运行的更快的算法. 如果要处理对象元素, 传递 iteratee函数来获取要对比的属性.
_.uniq([1, 2, 1, 3, 1, 4]); => [1, 2, 3, 4] _.uniq([{a:1},{a:1},{a:2}],function(key){return key.a;}); =>[{a:1},{a:2}]
defaults _.defaults(object, *defaults)
用defaults对象填充object 中的undefined属性。 并且返回这个object。一旦这个属性被填充,再使用defaults方法将不会有任何效果。
var iceCream = {flavor: "chocolate"}; _.defaults(iceCream, {flavor: "vanilla", sprinkles: "lots"}); => {flavor: "chocolate", sprinkles: "lots"}
相关推荐
全书共9章,分别介绍了JavaScript函数式编程、一等函数与Applicative编程、变量的作用域和闭包、高阶函数、由函数构建函数、递归、纯度和不变性以及更改政策、基于流的编程、类编程。除此之外,附录中还介绍了更多...
而Underscore.js则是一个实用工具库,为JavaScript提供了一套丰富的函数式编程方法。 标题"bcakbone.js中Underscore.js实现的视图与子视图"指向了Backbone.js中如何利用Underscore.js来处理视图及其子视图的相关...
Backbone.js 和 Underscore.js 是两个非常重要的 JavaScript 库,尤其在开发复杂前端应用时。Backbone.js 提供了一套 MVC(Model-View-Controller)架构,帮助开发者组织和管理代码,使其更加结构化。而 Underscore....
JavaScript函数库是Web开发中不可或缺的一部分,它们提供了一系列预定义的函数和方法,极大地提高了开发效率,降低了代码的复杂性。这些库通常包含了各种实用工具、动画效果、数据处理、事件处理、AJAX交互等功能,...
underscore是一个轻量级的JavaScript库,它提供了一系列实用的函数,帮助开发者更高效地处理数组、对象、函数等基本数据类型。其核心理念是为JavaScript语言添加一些在其他函数式编程语言中常见的实用工具方法,如...
Underscore.js 是一个轻量级的JavaScript库,它提供了多种实用的工具函数,用于处理数组、对象和函数。版本1.3.3是其在2012年的版本,遵循MIT许可协议,允许自由分发。该库受到了Prototype、Oliver Steele's ...
本文档主要介绍了JavaScript中使用函数编程的基本概念和技术,并通过Underscore.js库来演示函数编程的实际应用。Underscore.js是一个功能强大的实用工具库,提供了许多用于处理数组、对象和其他数据结构的方法,这些...
函数库,或称为库,是一组预先定义好的函数集合,开发者可以引入这些库来扩展JavaScript的功能,避免重复造轮子。它们通常包含了对DOM操作、动画、网络请求、数据处理等常见任务的支持。JavaScript的知名函数库有...
本文将通过"underscore-example"项目,深入探讨Underscore.js的核心功能和使用方法,帮助你更好地理解和应用这一强大的库。 一、Underscore.js简介 Underscore.js是由Jeremy Ashkenas开发的轻量级JavaScript库,其...
接下来,Underscore.js是一个实用工具库,提供了大量帮助函数,如数组操作、对象处理、函数编程等,极大地简化了JavaScript开发。例如,_.each()用于迭代数组或对象,_.map()可以对每个元素应用函数并返回新的数组,...
函数库是JavaScript开发中的常见工具,例如jQuery、lodash和Underscore.js等,它们提供了许多实用功能,简化了常见的编程任务。"javaScript_cb"可能包含类似的实用函数,比如遍历数组的方法、深度拷贝对象的函数、...
【require.js的用法详解】 require.js是一种JavaScript模块加载器,设计用于解决JavaScript代码的组织和异步加载问题。在早期的网页开发中,所有的JavaScript代码通常被编写在一个文件里,随着项目规模的扩大,代码...
Underscore.js是一个实用的JavaScript函数式编程工具库,它提供了一整套函数式编程辅助功能,包括迭代、函数绑定、模板和对象操作等。该库虽然不是JavaScript语言的一部分,但它的存在显著增强了JavaScript的函数式...
Underscore.js 是一个强大的JavaScript库,它在不污染JavaScript原生对象的基础上提供了大量实用的函数,涵盖了数组、对象、函数、字符串等多个方面的操作。在众多功能中,模板功能是其的一大亮点,尤其是在构建动态...
在Underscore.js这一JavaScript工具库中,提供了一个名为“debounce”的函数,它可以帮助开发者轻松实现防抖动逻辑。使用debounce函数时,只需要传入想要防抖的函数以及等待的时间(毫秒),debounce函数将返回一个...
JavaScript 中的匿名函数与封装是前端开发中经常使用到的概念,它们在维护代码库的清晰度和防止变量污染方面发挥着重要作用。下面将详细介绍这些概念,以及jQuery、Backbone和Underscore等库是如何实现封装的。 ...
Underscore.js是一个功能强大的JavaScript库,它提供了许多实用的函数,这些函数可帮助开发者处理数据和执行复杂的操作。尽管Underscore.js的流行度可能不如Lodash,但它的源码设计精巧,且比较简短,更适合用于深入...
Undertow是JavaScript的一个扩展库,它为流行的underscore.js提供了额外的实用工具函数。这个库旨在增强underscore.js的基础功能,帮助开发者更高效地处理各种编程任务。以下是对这个库及其扩展的一些详细解释。 ...
Underscore.js 是一个流行的 JavaScript 库,它提供了一组实用的函数,帮助开发者更方便地处理数组、对象和函数。在这个名为“underscorejs-js-students”的项目中,我们看到一个利用 Underscore.js 实现的学生日志...
而Underscore.js则是一个实用的JavaScript工具库,提供了许多方便的函数,可以增强JavaScript的原生功能,为Backbone.js提供了强大的底层支持。 **Backbone.js的关键特性** 1. **Models**:Backbone.js的核心组件...