前言
- 【 Lodash 和 Underscore 的关系 】
- 江湖传闻(没核实过,先听着吧,反正翻译的主角是Lodash):
- 一开始Lodash只是Underscore.js的一个fork,之后在原有的成功基础上取得了更大的成果,lodash的性能远远的超过了Underscore。
- lodash基于Underscore.js,且兼容性更好,性能更好,更加全面的测试,属于Underscore.js的超集
- 江湖传闻(没核实过,先听着吧,反正翻译的主角是Lodash):
- 【 ES6、ES7盛行的今天,还有必要使用 Lodash 么? 】
- 网上一哥们整理一篇好文——你并不需要Underscore/Lodash,里面梳理了已经被原生支持的一些方法,大家可以参考参考
- 当然,在下也觉得,可以用原生实现的就不需要额外引入第三方库,不过目前 Lodash 还是有些功能用起来还是挺高(tou)效(lan)
- 没有正面回答这个问题,到底有没有必要使用 Lodash?在下认为,还是见仁见智吧,萝卜青菜各有所爱,就看各位怎么看喽
- 【 网上中文资料那么多,为什么要自己瞎折腾? 】
- 说实话,在下不是什么大神,就是一个半吊子的码农,这次翻译也不纯粹为了翻译,更多是想多看看别人大神的代码,偷偷师。就算没学到也算见识见识。不能让自己老躲在自己的井底,多折腾,多看看。
- 【 快速通道 】
- 网上很多大神都有翻译过,如果比较心急,可以先行看看强大的网友翻译好的——Lodash中文文档
- (ps:Lodash 中文官网里面还是有很多为翻译)
- 【 ps 】
- 本文持续更新,很多细节还没想好怎么做才能更有价值,没事,先上路,细节路上解决,接受各位大大的吐槽和交流
信息
- 【 官网 】
- 【 版本号 】
v4.17.5
Array
_.chunk(array, [size=1])
_.chunk(array, [size=1])
将第一个参数(array数组),按照指定的长度(size),拆分成多个子数组,并将拆分出来的子数组组合成一个新的数组。如果没法均分,则剩余的元素组成一个子数组
引入版本
3.0.0
参数
array (Array): 需要处理的数组 [size=1] (number): 每个子数组的长度
返回
(Array): 返回一个包含拆分子数组的新数组
例子
_.chunk(['a', 'b', 'c', 'd'], 2);
// => [['a', 'b'], ['c', 'd']]
_.chunk(['a', 'b', 'c', 'd'], 3);
// => [['a', 'b', 'c'], ['d']]
_.chunk(["a", "b", "c", "d"])
// => [['a'], ['b'], ['c'], ['d']]
实用场景
待补充
_.compact(array)
_.compact(array)
去掉 array 中所有假值元素。其中,false, null, 0, "", undefined, NaN
都是被认为是“假值”
引入版本
0.1.0
参数
array (Array): 待处理的数组
返回
(Array): 返回过滤掉假值的新数组
例子
_.compact([0, 1, false, 2, '', 3]);
// => [1, 2, 3]
_.compact([0, 1, false, 2, '', 3, undefined, NaN, 4, 5, 'aaa', null, 'bbb', 666]);
// => [1, 2, 3, 4, 5, "aaa", "bbb", 666]
实用场景
待补充
_.concat(array, [values])
_.concat(array, [values])
创建一个新数组,把 array ,以及后面的任何值或数组连接起来
引入版本
4.0.0
参数
array (Array): 被连接的数组 [values] (...*):连接在 array 后面的值(ps:一个或多个)
返回
(Array): 返回连接后的新数组
例子
var array = [1];
var other = _.concat(array, 2, [3], [[4]]);
var another = _.concat(array, 2, [3], [[4]], false, null, 0, "", undefined, NaN);
console.log(other);
// => [1, 2, 3, [4]]
console.log(another);
// => [1, 2, 3, [4], false, null, 0, "", undefined, NaN]
console.log(array);
// => [1] ——说明不改变原数组 array
实用场景
待补充
作者简介:吴勤发,芦苇科技web前端开发工程师。擅长网站建设、公众号开发、微信小程序开发、小游戏、公众号开发,专注于前端框架、服务端渲染、SEO技术、交互设计、图像绘制、数据分析等研究,有兴趣的小伙伴来撩撩我们~ web@talkmoney.cn
访问 www.talkmoney.cn 了解更多