underscore.js 学习(二)

编程技术  /  houtizong 发布于 3年前   64

        Array Functions 所有数组函数对参数对象一样适用。
1.first   _.first(array, [n])   别名: head, take
       返回array的第一个元素,设置了参数n,就返回前n个元素。

//_.firstvar r = _.first([5, 4, 3, 2, 1]);console.log(r); //5var r = _.first([5,4,3,2,1],3);console.log(r); //[5,4,3]    

2.initial   _.initial(array, [n])
        返回数组中除了最后一个元素外的其他全部元素。尤其用于参数对象。传递 n参数将从结果中排除从最后一个开始的n个元素。

//_.initialvar 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个元素。 

//_.lastvar r = _.last([5, 4, 3, 2, 1]);console.log(r); //1var r = _.last([5, 4, 3, 2, 1],3);console.log(r); //[3,2,1]

4.rest   _.rest(array, [index]) 别名: tail, drop
        返回数组中除了第一个元素外的其他全部元素。传递index 参数将返回除了第index 个元素以外剩余的所有元素。

//_.restvar 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, "", undefinedNaN 都是false值。

//_.compactvar r = _.compact([0, 1, false, 2, '', 3]);console.log(r); //[1, 2, 3]

6.flatten   _.flatten(array, [shallow])
        将一个嵌套多层的数组array(数组) (嵌套可以是任何层数)转换为只有一层的数组。如果你传递shallow参数,数组将只减少一维的嵌套。

//_.flattenvar 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副本。(注:使用===表达式做相等测试。)

//_.withoutvar 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(数组)。 

//_.unionvar 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(数组)里。

//_.intersectionvar r = _.intersection([1, 2, 3], [101, 2, 1, 10], [2, 1]);console.log(r); //[1, 2]

10.difference   _.difference(array, *others)
         类似于without,但返回的值来自array参数数组,并且不存在于other 数组。

 

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!

留言需要登陆哦

技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成

网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];

      订阅博客周刊 去订阅

文章归档

文章标签

友情链接

Auther ·HouTiZong
侯体宗的博客
© 2020 zongscan.com
版权所有ICP证 : 粤ICP备20027696号
PHP交流群 也可以扫右边的二维码
侯体宗的博客