Array Functions 所有数组函数对参数对象一样适用。
1.first _.first(array, [n]) 别名: head, take
返回array的第一个元素,设置了参数n,就返回前n个元素。
//_.first var r = _.first([5, 4, 3, 2, 1]); console.log(r); //5 var r = _.first([5,4,3,2,1],3); console.log(r); //[5,4,3]
2.initial _.initial(array, [n])
返回数组中除了最后一个元素外的其他全部元素。尤其用于参数对象。传递 n参数将从结果中排除从最后一个开始的n个元素。
//_.initial var r = _.initial([5, 4, 3, 2, 1]); console.log(r); //[5, 4, 3, 2] var r = _.initial([5, 4, 3, 2, 1], 4); console.log(r); //[5]
3.last _.last(array, [n])
返回array(数组)的最后一个元素。传递 n参数将返回数组中从最后一个元素开始的n个元素。
//_.last var r = _.last([5, 4, 3, 2, 1]); console.log(r); //1 var r = _.last([5, 4, 3, 2, 1],3); console.log(r); //[3,2,1]
4.rest _.rest(array, [index])
别名: tail, drop
返回数组中除了第一个元素外的其他全部元素。传递index 参数将返回除了第index 个元素以外剩余的所有元素。
//_.rest var r = _.rest([5, 4, 3, 2, 1]); console.log(r); //[4, 3, 2, 1] var r = _.rest([5, 4, 3, 2, 1],3); console.log(r); //[2, 1]
5.compact _.compact(array)
返回一个除去所有false值的array副本。在javascript中, false, null, 0, "", undefined 和 NaN 都是false值。
//_.compact var r = _.compact([0, 1, false, 2, '', 3]); console.log(r); //[1, 2, 3]
6.flatten _.flatten(array, [shallow])
将一个嵌套多层的数组array(数组) (嵌套可以是任何层数)转换为只有一层的数组。如果你传递shallow参数,数组将只减少一维的嵌套。
//_.flatten var r = _.flatten([1, [2], [3, [[4]]]]); console.log(r); //[1, 2, 3, 4]; var r = _.flatten([1, [2], [3, [[4]]]], true); console.log(r); //[1, 2, 3, [[4]]]; var r = _.flatten([[1,[1.1,[2.2]]], [2], [3, [[4]]]], true); console.log(r); //[1,[1.1,[2.2]],2,3,[[4]]]
7.without _.without(array, [*values])
返回一个删除所有values值的array副本。(注:使用===表达式做相等测试。)
//_.without var r = _.without([1, 2, 1, 0, 3, 1, 4], 0, 1); console.log(r); //[2, 3, 4] var r = _.without([{code:'001',name:'TEST001'},{code:'002',name:'TEST002'},{code:'003',name:'TEST003'}],{code:'002',name:'TEST002'}); console.log(r); //[{code:'001',name:'TEST001'},{code:'002',name:'TEST002'},{code:'003',name:'TEST003'}]
8.union _.union(*arrays)
返回传入的arrays(数组)并集:按顺序返回,数组的元素是唯一的,可以传入一个或多个 arrays(数组)。
//_.union var r = _.union([1, 2, 3], [101, 2, 1, 10], [2, 1]); console.log(r); //[1, 2, 3, 101, 10]
9.intersection _.intersection(*arrays)
返回传入arrays(数组)交集。结果中的每个值是存在于传入的每个arrays(数组)里。
//_.intersection var r = _.intersection([1, 2, 3], [101, 2, 1, 10], [2, 1]); console.log(r); //[1, 2]
10.difference _.difference(array, *others)
类似于without,但返回的值来自array参数数组,并且不存在于other 数组。
相关推荐
underscore.js源码,适合初始化学习javascript,强烈推荐
通过学习和理解这些示例,开发者可以更好地掌握如何在实际项目中结合Backbone.js和Underscore.js,构建出高效、可维护的前端应用。同时,这个主题也鼓励开发者深入研究函数式编程的思想,提升代码质量。总之,...
首先,underscore.string是underscore.js库的一个扩展,它为JavaScript的String对象添加了超过150个实用方法,涵盖了字符串处理的各个方面,如格式化、分割、查找替换、大小写转换等。这个库的设计理念是使字符串...
Underscore.js是一个轻量级的JavaScript实用库,它为开发者提供了大量函数式编程工具,使得在JavaScript中实践函数式编程变得更加容易。 在JavaScript中,函数式编程的核心概念包括: 1. **纯函数**:一个纯函数在...
在这个“微信小程序demo”中,开发者利用了三种重要的第三方JavaScript库:Underscore.js、Immutable.js和UUID,来增强小程序的功能和性能。 **Underscore.js** 是一个轻量级的JavaScript实用工具库,提供了大量的...
underscore.js是一款轻量级的JavaScript实用库,它为JavaScript开发提供了大量的实用函数,极大地增强了原生JavaScript对象的处理能力。在"underscore-1.6.0.zip"这个压缩包中,包含的就是underscore库的1.6.0版本。...
本示例中的“微信小程序demo”就展示了如何使用两个常用的JavaScript库——Underscore.js和Immutable.js,并且生成了一个UUID。下面将详细介绍这三个库及其在微信小程序中的应用。 **Underscore.js** Underscore.js...
《深入剖析underscore.js:源码探索与学习指南》 在JavaScript的世界里,underscore.js是一个备受开发者喜爱的轻量级库,它提供了丰富的实用函数,帮助我们处理数组、对象、函数等核心数据类型,大大简化了代码。本...
underscore.js,作为一款轻量级的JavaScript库,它提供了一整套实用的功能,旨在简化和优化JavaScript开发中的常见任务。在本文中,我们将深入探讨underscore.js的核心特性、设计理念以及如何在实际项目中有效地利用...
《深入剖析Underscore.js:源码解析与应用实践》 Underscore.js是一款轻量级的JavaScript实用库,它提供了大量的实用...无论你是JavaScript新手还是资深开发者,分析Underscore.js源码都将是一次富有价值的学习体验。
`underscore函数说明文档.docx`则详细阐述了各个函数的用法、参数和返回值,是学习和使用Underscore.js的重要参考资料。通过查阅这份文档,开发者可以更深入地理解每个函数的工作原理,并在实际项目中灵活应用。 四...
总之,这个名为"underscore-analysis, underscore-1.8.3.js 源码解读 & 系列文章(完 )"的压缩包,是JavaScript开发者不可多得的学习材料。它不仅提供了一次深入学习underscore.js的机会,也是一次提高JavaScript...
《深入剖析 underscore.js:探索 JavaScript 开源库的精髓》 在JavaScript的世界里,underscore.js(下文简称_)...无论你是初学者还是经验丰富的开发者,深入学习和理解 underscore.js 都将对你的编程生涯大有裨益。
underscore.js,作为一个轻量级的JavaScript库,以其强大的功能性、高效性和灵活性,被广泛应用于前端开发中。它提供了大量的实用函数,帮助开发者处理数组、对象、函数等数据类型,极大地提高了代码的可读性和可...
总结,Underscore.js作为JavaScript开发的强大辅助工具,通过“underscore-example”项目的学习,能让你深入理解并熟练运用其提供的各种功能。无论是在日常开发还是复杂项目中,掌握Underscore.js都能使你的代码更加...
总结,Underscore.js作为一款优秀的JavaScript实用库,它的源码学习能够提升我们的编程技巧,加深对函数式编程的理解,同时也能帮助我们在项目中更好地利用这些工具,提高代码质量。通过深入学习和实践,你将能够...
《深入解析 underscore.js:一个强大的JavaScript工具库》 在JavaScript的世界里,underscore.js 是一个备受推崇的工具库,它提供了大量的实用函数,帮助开发者更高效地处理数组、对象、函数等核心JavaScript数据...
underscore.js是一个轻量,实用,兼容低版本浏览器JavaScript工具库和支持JavaScript多环境下使用。 ###主要 ###为什么要做原始码剖析 最近这段时间也是在重新沉淀自己的技术栈和学习新的技术,虽然在js编码风格上...
通过对Underscore.js源码的深入学习,开发者不仅可以掌握JavaScript的高级用法,还能了解到函数式编程的设计模式和优化技巧,为自己的编程生涯添加一笔宝贵的经验。同时,了解并参与到开源项目中,也是提升专业素养...
通过深入学习underscore.js的源码,我们可以更好地理解JavaScript的内在机制,提升我们的编程技巧,并在实际项目中灵活运用这些知识,编写出更高效、更简洁的代码。同时,这也是对函数式编程思想的一种实践,有助于...