| // Copyright 2019 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 setupArray(length) { |
| var a = new Array(length); |
| for (var i=0;i<length;i++) { |
| a[i] = ''+i; |
| } |
| return Object.freeze(a); |
| } |
| |
| const frozenArray = setupArray(200); |
| |
| function driverArrayIndexOf(n) { |
| let result = 0; |
| for (var i=0;i<n;i++) { |
| result += frozenArray.indexOf(''+i)==-1?0:1; |
| } |
| return result; |
| } |
| |
| function ArrayIndexOf() { |
| driverArrayIndexOf(1e4); |
| } |
| |
| function ArrayIndexOfWarmUp() { |
| driverArrayIndexOf(1e1); |
| driverArrayIndexOf(1e2); |
| driverArrayIndexOf(1e3); |
| } |
| |
| createSuite('ArrayIndexOf', 10, ArrayIndexOf, ArrayIndexOfWarmUp); |
| |
| function driverArrayIncludes(n) { |
| let result = 0; |
| for (var i=0;i<n;i++) { |
| result += frozenArray.includes(''+i)?0:1; |
| } |
| return result; |
| } |
| |
| function ArrayIncludes() { |
| driverArrayIncludes(1e4); |
| } |
| |
| function ArrayIncludesWarmUp() { |
| driverArrayIncludes(1e1); |
| driverArrayIncludes(1e2); |
| driverArrayIncludes(1e3); |
| } |
| |
| createSuite('ArrayIncludes', 10, ArrayIncludes, ArrayIncludesWarmUp); |