diff options
author | 2022-10-08 18:22:50 -0700 | |
---|---|---|
committer | 2022-10-09 02:02:47 -0700 | |
commit | b63218206d4a15030efc941ebcbe9b0dcba7e5d8 (patch) | |
tree | 7995587472cc8b87e1770f99b9e822388346584c /bench/snippets/object-entries.mjs | |
parent | 349ccf229b6a246f56d54124156729aad5a8eba4 (diff) | |
download | bun-b63218206d4a15030efc941ebcbe9b0dcba7e5d8.tar.gz bun-b63218206d4a15030efc941ebcbe9b0dcba7e5d8.tar.zst bun-b63218206d4a15030efc941ebcbe9b0dcba7e5d8.zip |
Add some more bench snippets
Diffstat (limited to 'bench/snippets/object-entries.mjs')
-rw-r--r-- | bench/snippets/object-entries.mjs | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/bench/snippets/object-entries.mjs b/bench/snippets/object-entries.mjs new file mode 100644 index 000000000..c3e4bf9e5 --- /dev/null +++ b/bench/snippets/object-entries.mjs @@ -0,0 +1,64 @@ +// so it can run in environments without node module resolution +import { bench, run } from "../../node_modules/mitata/src/cli.mjs"; + +const obj = { + a: 1, + b: 2, + c: 3, + d: 4, + e: 5, + f: 6, + g: 7, + h: 8, + i: 9, + j: 10, + k: 11, + l: 12, + m: 13, + n: 14, + o: 15, + p: 16, + q: 17, + r: 18, + s: 19, + t: 20, + u: 21, + v: 22, + w: 23, + x: 24, + y: 25, + z: 26, +}; + +bench("Object.entries(26 keys)", () => { + var k; + for (let [key, value] of Object.entries(obj)) { + value = key; + } + return k; +}); + +bench("Object.keys(26 keys)", () => { + var k; + for (let [key, value] of Object.keys(obj)) { + value = key; + } + return k; +}); + +bench("Object.entries(2 keys)", () => { + var k; + for (let [key, value] of Object.entries({ a: 1, b: 2 })) { + value = key; + } + return k; +}); + +bench("Object.keys(2 keys)", () => { + var k; + for (let item of Object.keys({ a: 1, b: 2 })) { + } + return k; +}); + +await run(); |