lodash和下划线之间的区别
。这个问题是基于观点的。它当前不接受答案。
更新问题,以便通过编辑此帖子以事实和引用的形式回答。
去年关闭。
为什么有人会比其他人更喜欢lodash.js或underscore.js实用程序库?
Lodash似乎是下划线的替代品,下划线的使用时间更长。
我认为两者都很出色,但是我对它们的工作方式还不甚了解,无法进行有根据的比较,我想进一步了解它们之间的差异。
回答:
我创建Lo-Dash的目的是为数组,字符串,对象和arguments
对象1提供更一致的跨环境迭代支持。此后,它已成为Underscore的超集,提供更一致的API行为,更多功能(如AMD支持,深度克隆和深度合并),更全面的文档和单元测试(在Node,Ringo,Rhino,Narwhal,PhantomJS中运行的测试)和浏览器),从而为大型阵列/对象迭代提供更好的整体性能和优化,并通过自定义版本和模板预编译实用程序提供更大的灵活性。
由于Lo-Dash的更新频率比Underscore更新的频率高,因此提供了一个lodash
underscore构建以确保与最新稳定版本的Underscore兼容。
有一次我什至获得了推送到Underscore的权限,部分原因是Lo-
Dash负责提出30多个问题。Underscore v1.4.x +中的着陆错误修复,新功能和性能提升。
此外,至少有3个Backbone样板默认包含Lo-
Dash,而Backbone的官方文档中现在提到了Lo-Dash 。
查看Kit Cambridge的帖子,向Lo-Dash说“你好”,以深入了解Lo-Dash和Underscore之间的区别。
脚注:
- 下划线对数组,字符串,对象和
arguments
对象的支持不一致。在较新的浏览器中,Underscore方法将忽略数组中的孔,“ Objects”方法将迭代arguments
对象,将字符串视为类似于数组的方法,并且方法将正确地迭代函数(忽略其“ prototype”属性)和对象(迭代阴影的属性,例如“toString”和“valueOf”),而在较旧的浏览器中则不会。同样,下划线方法(例如)_.clone
保留数组中的孔,而其他方法_.flatten
则不保留。
以上是 lodash和下划线之间的区别 的全部内容, 来源链接: utcz.com/qa/411167.html