let foo = "get some property storage"; let first = "new first element"; let bar = "ensure property storage is zeroed"; function run(array) { array.foo = foo; array.unshift(first, ...new Array(100)); array.bar = bar; return array; } noInline(run); function test() { let array = run([]); if (array.foo !== foo) throw new Error(); if (array.bar !== bar) throw new Error(); if (array[0] !== first) throw new Error(); array = []; array.unshift(1); array = run(array); if (array.foo !== foo) throw new Error(); if (array.bar !== bar) throw new Error(); if (array[0] !== first) throw new Error(); } for (let i = 0; i < 1; i++) test();