.jpg)
社区在 4 个月前审查了是否重新打开此问题并将其关闭:
未解决原始关闭原因

我创建 Lodash 是为了为数组、字符串、对象和对象1 提供更一致的跨环境迭代支持。此后,它已成为Underscore.js的超集,提供了更一致的API行为,更多的功能(如AMD支持,深度克隆和深度合并),更全面的文档和单元测试(在Node.js,RingoJS,Rhino,Narwhal,PhantomJS和浏览器中运行的测试),更好的整体性能和大型数组/对象迭代的优化,以及自定义构建和模板预编译实用程序的更大灵活性。arguments
由于 Lodash 的更新频率高于 Underscore.js,因此提供了一个构建以确保与 Underscore.js 的最新稳定版本兼容。lodash underscore
有一次,我甚至获得了对 Underscore.js 的推送访问权限,部分原因是 Lodash 负责提出 30 多个问题;登陆错误修复、新功能和性能提升在下划线.js v1.4.x+。
此外,至少有三个 Backbone.js 样板默认包含 Lodash,Lodash 现在在 Backbone 的官方文档中被提及.js。
查看Kit Cambridge的帖子,对Lo-Dash说“Hello”,以更深入地了解Lodash和Underscore.js之间的差异。
脚注:
argumentsarguments_.clone_.flatten
Lodash的灵感来自Underscore.js,但现在它是一个卓越的解决方案。您可以进行定制构建,具有更高的性能,支持AMD并具有出色的额外功能。检查这个 洛达什 vs. 下划线.js jsperf 上的基准测试和…这篇关于洛达什的精彩帖子:
当您使用集合时,最有用的功能之一是速记语法:
(尽管 Underscore 现在也支持此语法)
var characters = [
{ 'name': 'barney', 'age': 36, 'blocked': false },
{ 'name': 'fred', 'age': 40, 'blocked': true }
];
// Using "_.filter" callback shorthand
_.filter(characters, { 'age': 36 });
// Using Underscore.js
_.filter(characters, character => character.age === 36);
// → [{ 'name': 'barney', 'age': 36, 'blocked': false }]
(摘自 Lodash 文档)

如果像我一样,您期望 Underscore.js 和 Lodash 之间的使用差异列表,那么有一个从 Underscore.js 迁移到 Lodash 的指南。
这是后人对它的当前状态:
- 下划线是洛达什
_.any_.some- 下划线是洛达什
_.all_.every- 下划线是洛达什
_.compose_.flowRight- 下划线是洛达什
_.contains_.includes- 下划线不允许通过返回退出
_.eachfalse- 下划线是洛达什
_.findWhere_.find- 默认情况下,下划线较深,而 Lodash 较浅
_.flatten- 下划线支持传递参数的迭代,而在 Lodash 中,
迭代只传递一个参数:。_.groupBy(value, index, originalArray)_.groupBy(value)- 下划线.js第三个参数是 Lodash
_.indexOfundefined_.indexOf- 下划线.js第三个参数是 Lodash
_.indexOftrue_.sortedIndexOf- 下划线是洛达什
_.indexBy_.keyBy- 下划线是洛达什
_.invoke_.invokeMap- 下划线是洛达什
_.mapObject_.mapValues- 下划线组合洛达什
_.max_.max&_.maxBy- 下划线组合洛达什
_.min_.min&_.minBy- 下划线组合洛达什
_.sample_.sample&_.sampleSize- 下划线结合了洛达什和
_.object_.fromPairs_.zipObject- 谓词下划线是 Lodash
_.omit_.omitBy- 下划线是洛达什
_.pairs_.toPairs- 谓词下划线是 Lodash
_.pick_.pickBy- 下划线是洛达什
_.pluck_.map- 下划线组合洛达什
_.sortedIndex_.sortedIndex&_.sortedIndexOf- 下划线由 是 洛达什
_.uniqiteratee_.uniqBy- 下划线是洛达什
_.where_.filter- 下划线与
(例如 在下划线中返回.js,但在洛达什)_.isFiniteNumber.isFinite_.isFinite('1')truefalse- 下划线速记不支持深度比较
(例如,_.matches_.filter(objects, { 'a': { 'b': 'c' } }))- 下划线 ≥ 1.7 和 Lodash 语法是
_.template
_.template(string, option)(data)- 洛达什缓存就像对象
_.memoizeMap- Lodash不支持许多方法的论点,以支持
context_.bind- Lodash 支持隐式链接、惰性链接和快捷方式融合
- Lodash 将其重载 、、 和 拆分为
、、 和
(即 在下划线中.js在洛达什中)_.head_.last_.rest_.initial_.take_.takeRight_.drop_.dropRight_.head(array, 2)_.take(array, 2)
模板简介:该模板名称为【在 JavaScript 中Lodash 和 Underscore.js 之间的差异】,大小是暂无信息,文档格式为.编程语言,推荐使用Sublime/Dreamweaver/HBuilder打开,作品中的图片,文字等数据均可修改,图片请在作品中选中图片替换即可,文字修改直接点击文字修改即可,您也可以新增或修改作品中的内容,该模板来自用户分享,如有侵权行为请联系网站客服处理。欢迎来懒人模板【JavaScript】栏目查找您需要的精美模板。