【发布时间】:2016-11-22 20:22:36
【问题描述】:
假设我有一组人员对象,我想使用 lodash 来查找名为“Joe”的对象。
我可以使用_.matches iteratee 速记来做到这一点:
const joe = _.find(persons, {name: 'Joe'});
我可以使用 _.matchesProperty iteratee 速记来做到这一点:
const joe = _.find(persons, ['name', 'Joe']);
使用这些方法(或其他方法)的优点是什么?
【问题讨论】:
-
persons.find(v => v.name === 'Joe') -
虽然我没有投反对票,但它引出了一个问题“定义'更好'”
-
@Chris - 这就是原因所在。我希望人们能够推理出他们的偏好,以便我做出决定。
-
@zerkms Array.prototype.find 作为 ECMAScript 的新增功能,并非所有浏览器(例如 IE)都支持。这就是使用 lodash 的原因之一。 developer.mozilla.org/en/docs/Web/JavaScript/Reference/…
-
@splintor 我理解,但它不适合 SO 格式,除非我们能够更好地量化“更好”的含义。换句话说,如果下面有 3 个人回答,如果这只是一个偏好,我应该投票支持哪一个?我会说要么将问题重新定义为“使用匹配速记有任何性能优势吗?”甚至,“在 lodash 中使用各种速记方法有什么好处?”——然后我们可以提出一个由比较组成的综合答案,而不是“我喜欢这个,因为 x”
标签: javascript lodash