aboutsummaryrefslogtreecommitdiff
path: root/benchmark
diff options
context:
space:
mode:
authorJames M Snell <jasnell@gmail.com>2020-05-23 15:43:58 -0700
committerJames M Snell <jasnell@gmail.com>2020-05-28 06:31:58 -0700
commit785842a053d62820027c6b62b41110113a7f1755 (patch)
tree0604009d2b0a263402add3718d2580127a105275 /benchmark
parent47044a91c6269a395098cf74d4b2a2e70df5c321 (diff)
downloadios-node-v8-785842a053d62820027c6b62b41110113a7f1755.tar.gz
ios-node-v8-785842a053d62820027c6b62b41110113a7f1755.tar.bz2
ios-node-v8-785842a053d62820027c6b62b41110113a7f1755.zip
events: initial implementation of experimental EventTarget
See documentation changes for details Signed-off-by: James M Snell <jasnell@gmail.com> PR-URL: https://github.com/nodejs/node/pull/33556 Refs: https://github.com/nodejs/node/pull/33527 Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com> Reviewed-By: Matteo Collina <matteo.collina@gmail.com> Reviewed-By: Bradley Farias <bradley.meck@gmail.com>
Diffstat (limited to 'benchmark')
-rw-r--r--benchmark/events/eventtarget.js24
1 files changed, 24 insertions, 0 deletions
diff --git a/benchmark/events/eventtarget.js b/benchmark/events/eventtarget.js
new file mode 100644
index 0000000000..7a7253aefb
--- /dev/null
+++ b/benchmark/events/eventtarget.js
@@ -0,0 +1,24 @@
+'use strict';
+const common = require('../common.js');
+
+const bench = common.createBenchmark(main, {
+ n: [2e7],
+ listeners: [1, 5, 10]
+}, { flags: ['--expose-internals'] });
+
+function main({ n, listeners }) {
+ const { EventTarget, Event } = require('internal/event_target');
+ const target = new EventTarget();
+
+ for (let n = 0; n < listeners; n++)
+ target.addEventListener('foo', () => {});
+
+ const event = new Event('foo');
+
+ bench.start();
+ for (let i = 0; i < n; i++) {
+ target.dispatchEvent(event);
+ }
+ bench.end(n);
+
+}