Toggle navigation
MeasureThat.net
Create a benchmark
Tools
Feedback
FAQ
Register
Log In
Js custom Filter test
(version: 0)
Comparing performance of:
Filter default vs Filter Boolean
Created:
7 years ago
by:
Guest
Jump to the latest result
Tests:
Filter default
let value = [true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true]; let result = value.filter(v => v);
Filter Boolean
let value = [true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true]; let result = value.filter(Boolean);
Rendered benchmark preparation results:
Suite status:
<idle, ready to run>
Run tests (2)
Previous results
Fork
Test case name
Result
Filter default
Filter Boolean
Fastest:
N/A
Slowest:
N/A
Latest run results:
No previous run results
This benchmark does not have any results yet. Be the first one
to run it!
Autogenerated LLM Summary
(model
gemma2:9b
, generated one year ago):
This benchmark tests the performance of two different approaches to filtering a boolean array in JavaScript: **Approach 1: `filter` with custom callback:** * **Benchmark Definition:** ```javascript let value = [true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true]; let result = value.filter(v => v); ``` This approach uses the built-in `filter` method and provides a custom callback function `v => v`. This function simply returns the truthiness of each element (`v`) in the array. Since `true` is considered truthy, it will keep all `true` values and discard `false` values. **Approach 2: `filter` with built-in `Boolean`:** * **Benchmark Definition:** ```javascript let value = [true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true,false,true]; let result = value.filter(Boolean); ``` This approach utilizes the `filter` method again but directly passes the built-in `Boolean` function as the callback. The `Boolean` function automatically converts its input to a boolean and returns `true` if it's truthy and `false` otherwise. This effectively filters out all `false` values from the array. **Pros/Cons:** * **Approach 1 (custom callback):** * **Pros:** More explicit in its intent, potentially easier for some developers to understand. * **Cons:** Might be slightly less performant than Approach 2 due to the additional function call. * **Approach 2 (built-in `Boolean`):** * **Pros:** Potentially more performant as it leverages a pre-optimized built-in function. * **Cons:** Can be slightly less readable for developers unfamiliar with how `Boolean` works internally. **Other Considerations:** * **Edge Cases:** This benchmark focuses on filtering boolean values. For arrays with different data types or more complex filtering logic, other approaches might be more suitable. * **Libraries:** No libraries are involved in these benchmarks. * **Alternatives:** * **Array `for` loop:** While generally slower than `filter`, it offers more fine-grained control over the filtering process. * **Other built-in methods (e.g., `forEach`, `some`):** Depending on your exact use case, these methods might be more appropriate for iterating or checking elements in the array. Let me know if you have any other questions about JavaScript benchmarks or performance testing!
Related benchmarks:
Array filter falsy
Filter Comparison
test filter
vs aaasassa
Comments
Confirm delete:
Do you really want to delete benchmark?