We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 94302b6 commit ac1cb8dCopy full SHA for ac1cb8d
2 files changed
lib/internal/perf/performance.js
@@ -97,13 +97,16 @@ class Performance extends EventTarget {
97
return filterBufferMapByNameAndType();
98
}
99
100
- getEntriesByName(name) {
+ getEntriesByName(name, type = undefined) {
101
validateInternalField(this, kPerformanceBrand, 'Performance');
102
if (arguments.length === 0) {
103
throw new ERR_MISSING_ARGS('name');
104
105
name = `${name}`;
106
- return filterBufferMapByNameAndType(name, undefined);
+ if (type !== undefined) {
107
+ type = `${type}`;
108
+ }
109
+ return filterBufferMapByNameAndType(name, type);
110
111
112
getEntriesByType(type) {
test/parallel/test-performance-timeline.mjs
@@ -33,6 +33,12 @@ await setTimeout(50);
33
performance.measure('a', 'one');
34
const entriesByName = performance.getEntriesByName('a');
35
assert.deepStrictEqual(entriesByName.map((x) => x.entryType), ['measure', 'mark', 'measure', 'mark']);
36
+const marksByName = performance.getEntriesByName('a', 'mark');
37
+assert.deepStrictEqual(marksByName.map((x) => x.entryType), ['mark', 'mark']);
38
+const measuresByName = performance.getEntriesByName('a', 'measure');
39
+assert.deepStrictEqual(measuresByName.map((x) => x.entryType), ['measure', 'measure']);
40
+const invalidTypeEntriesByName = performance.getEntriesByName('a', null);
41
+assert.strictEqual(invalidTypeEntriesByName.length, 0);
42
43
// getEntriesBy[Name|Type](undefined)
44
performance.mark(undefined);
0 commit comments