gpt4 book ai didi

javascript - 在js中比较2个对象的最快方法

转载 作者:行者123 更新时间:2023-11-29 23:08:34 24 4
gpt4 key购买 nike

在 javascript 中比较 2 个对象的最快方法是什么?

例如我有这两个对象:

a = [{'name': 'john', 'age': 22}, {'name': 'mike', 'age': 23}, {'name': 'anne', 'age': 12}, {'name': 'dan', 'age': 29}, {'name': 'jane', 'age': 34}]
b = [{'name': 'john', 'age': 22}, {'name': 'anne', 'age': 12}]

通常,我会这样做:

for (var i = 0; i < a.length; i++) {
for (var j = 0; j < b.length; j++) {
console.log(a[i]) // => [{'name': 'john', 'age': 22}, {'name': 'anne', 'age': 12}]
}
}

这花费的时间太长了,有没有更快的方法?感谢您的宝贵时间!

最佳答案

你可以看看fast-deep-equal包裹。这是他们的 README.md 中的性能基准,供您引用。

fast-deep-equal x 226,960 ops/sec ±1.55% (86 runs sampled)
nano-equal x 218,210 ops/sec ±0.79% (89 runs sampled)
shallow-equal-fuzzy x 206,762 ops/sec ±0.84% (88 runs sampled)
underscore.isEqual x 128,668 ops/sec ±0.75% (91 runs sampled)
lodash.isEqual x 44,895 ops/sec ±0.67% (85 runs sampled)
deep-equal x 51,616 ops/sec ±0.96% (90 runs sampled)
deep-eql x 28,218 ops/sec ±0.42% (85 runs sampled)
assert.deepStrictEqual x 1,777 ops/sec ±1.05% (86 runs sampled)
ramda.equals x 13,466 ops/sec ±0.82% (86 runs sampled)
The fastest is fast-deep-equal

关于javascript - 在js中比较2个对象的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54291729/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com