当前位置: 首页 > 面试题库 >

lodash和下划线之间的区别

赫连彬炳
2023-03-14
问题内容

已关闭 。这个问题是基于观点的。它当前不接受答案。

想改善这个问题吗? 更新问题,以便通过编辑此帖子以事实和引用的形式回答。

去年关闭。

为什么有人会比其他人更喜欢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之间的区别。

脚注:

  1. 下划线对数组,字符串,对象和arguments对象的支持不一致。在较新的浏览器中,Underscore方法将忽略数组中的孔,“ Objects”方法将迭代arguments对象,将字符串视为类似于数组的方法,并且方法将正确地迭代函数(忽略其“ prototype”属性)和对象(迭代阴影的属性,例如“toString”和“valueOf”),而在较旧的浏览器中则不会。同样,下划线方法(例如)_.clone保留数组中的孔,而其他方法_.flatten则不保留。


 类似资料:
  • 本文向大家介绍lodash和下划线之间有什么区别?,包括了lodash和下划线之间有什么区别?的使用技巧和注意事项,需要的朋友参考一下 lodash和underscore都是实用程序库,它们通过提供使数组,数字,对象,字符串等的使用更加容易的实用程序,使JavaScript变得更容易。这些库非常适合- 迭代数组,对象和字符串 操作和测试值 创建复合函数 它们都是功能库。Lo-Dash是Unders

  • 问题内容: 在Lodash库中,有人可以更好地解释合并和扩展/分配。 这是一个简单的问题,但答案仍然使我回避。 问题答案: 下面是如何/作品:对于源的每个属性,复制其价值,是到目的地。如果属性值本身是对象,则不会对其属性进行递归遍历。整个对象将从源中获取并设置到目标中。 下面是如何工作的:对于源的每个属性,检查如果该属性是对象本身。如果是,则递归关闭并尝试将子对象属性从源映射到目标。因此,实质上,

  • 本文向大家介绍Python3中_(下划线)和__(双下划线)的用途和区别,包括了Python3中_(下划线)和__(双下划线)的用途和区别的使用技巧和注意事项,需要的朋友参考一下 在看一些Python开源代码时,经常会看到以下划线或者双下划线开头的方法或者属性,到底它们有什么作用,又有什么样的区别呢?今天我们来总结一下(注:下文中的代码在Python3下测试通过) _ 的含义 在python的类中

  • 本文向大家介绍Lodash库中.extend()/ .assign()和.merge()之间的区别。,包括了Lodash库中.extend()/ .assign()和.merge()之间的区别。的使用技巧和注意事项,需要的朋友参考一下 分配/扩展采用源中的每个属性,将其值原样复制到目标。如果属性值本身是对象,则不会对其属性进行递归遍历。这也称为浅复制/克隆。整个对象将从源中取出并放入目的地。 合并

  • 本文向大家介绍进程和线程之间的区别,包括了进程和线程之间的区别的使用技巧和注意事项,需要的朋友参考一下 进程是活动程序,即正在执行的程序。它不仅包含程序代码,还包括程序计数器,进程堆栈,寄存器,程序代码等。与此相比,程序代码只是文本部分。 线程是可以由调度程序独立管理的轻量级进程。它使用并行性提高了应用程序性能。线程与它的对等线程共享信息,如数据段,代码段,文件等,而该线程包含其自己的寄存器,堆栈

  • 在Lodash库中,是否有人可以更好地解释合并和扩展/分配。 这是一个简单的问题,但我还是没有回答。