Test name | Executions per second |
---|---|
Find | 7610282.5 Ops/sec |
Some | 5917055.0 Ops/sec |
var arr = [{
type: 'This Thing'
}, {
type: 'Something Else'
}];
var arr2 = [{
type: 'SomethingElse'
}, {
type: 'Something Else'
}]
function _find(items) {
let hasThisThing = false;
let hasSomethingElse = false;
return arr.find(item => {
const isThisThing = item.type === 'This Thing';
hasThisThing = hasThisThing || isThisThing;
hasSomethingElse = hasSomethingElse || !isThisThing;
return hasThisThing && hasSomethingElse;
});
}
function _some(items) {
let hasThisThing = arr.some(item => item.type === 'This Thing');
let hasSomethingElse;
if (hasThisThing) {
hasSomethingElse = arr.some(item => item.type !== 'This Thing');
}
return hasThisThing && hasSomethingElse;
}
_find(arr)
_find(arr2)
_some(arr)
_some(arr2)