|
1 function A(a) { this.a = a; } |
|
2 A.prototype.foo = function (x) {}; |
|
3 function B(b) { this.b = b; } |
|
4 B.prototype.foo = function (x) {}; |
|
5 function C(c) {} |
|
6 function makeArray(n) { |
|
7 var classes = [A, B, C]; |
|
8 var arr = []; |
|
9 for (var i = 0; i < n; i++) { |
|
10 arr.push(new classes[i % 3](i % 3)); |
|
11 } |
|
12 return arr; |
|
13 } |
|
14 function runner(arr, resultArray, len) { |
|
15 for (var i = 0; i < len; i++) { |
|
16 var obj = arr[i]; |
|
17 resultArray[0] += obj.foo(i); |
|
18 } |
|
19 } |
|
20 var resultArray = [0]; |
|
21 var arr = makeArray(30000); |
|
22 C.prototype.foo = Uint8ClampedArray; |
|
23 runner(arr, resultArray, 30000); |