| // Copyright 2018 the V8 project authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| function benchy(fn, name) { |
| new BenchmarkSuite(name, [1], [ |
| new Benchmark(name, true, false, 0, fn), |
| function forLoop(array, searchValue) { |
| for (let i = 0; i < array.length; ++i) { |
| if (array[i] === searchValue) return true; |
| function indexOf(array, searchValue) { |
| return array.indexOf(searchValue) !== -1; |
| function includes(array, searchValue) { |
| return array.includes(searchValue); |
| 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, |
| const HOLEY = new Array(PACKED.length); |
| for (let i = 0; i < PACKED.length; ++i) |
| const result = fn(PACKED, SEARCH_VALUE) && fn(HOLEY, SEARCH_VALUE); |
| benchy(() => helper(forLoop), 'for loop'); |
| benchy(() => helper(indexOf), 'Array#indexOf'); |
| benchy(() => helper(includes), 'Array#includes'); |