我注意到 Lo-Dash 有一个特殊的 Underscore 兼容构建,表面上是为了解决函数参数/操作中的差异(因为 Lo-Dash 是 Underscore 的超集,我假设 Lo-Dash 中没有缺少 Underscore 函数) .
我还注意到 BackboneJS 可以与 Underscore 或 Lo-Dash 一起使用。
我的问题:将 Lo-Dash 的“正常”版本与 BackboneJS 一起使用是不明智的吗?我找不到任何迹象表明人们是否在野外这样做,但这似乎是一个坏主意,特别是如果 BackboneJS 依赖于这些构建中可能不同的函数。同时,如果能使用 Lo-Dash 中的一些新功能就好了,所以如果没有必要,我不想错过这些功能。
最佳答案
[edit]从使用lodash一段时间的个人经验来看,我发现差异并不是太大。我建议您使用正常版本,但如果您不想冒任何风险,请使用兼容版本。
<小时/>要知道答案,请参阅此 wiki 页面,该页面总结了下划线 Lo-Dash 构建和普通 Lo-Dash 之间的差异:
https://github.com/lodash/lodash/wiki/build-differences
Underscore 构建(包括 Backbone 构建,它是 Underscore 构建的子集)
Lo-Dash 的直观链接被 Underscore 的显式链接风格取代如果您想使用的话,_.chain
方法仍然存在。- 如果回调返回 false,
_.each
方法不会提前退出 _.defaults
和_.extend
方法迭代源对象的继承属性- 从
_.contains
、_.omit
、_.pick
和_.template 等方法中删除了额外功能
关于javascript - 与 BackboneJS 一起使用时,我应该使用 Lo-Dash 的 Underscore 兼容版本吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17224279/