- Version: v13.9.0
- Platform: Windows 10 v1903 build 18362.657 64‑bit
- Subsystem:
util
What steps will reproduce the bug?
Run node --allow-natives-syntax -p 'util.inspect(%GetUndetectable())'
What is the expected behavior?
> node --allow-natives-syntax -p 'util.inspect(%GetUndetectable())'
[Function (anonymous)]
What do you see instead?
> node --allow-natives-syntax -p 'util.inspect(%GetUndetectable())'
undefined
Additional information
This is because the type check in util.inspect doesn’t account for objects with the [[IsHTMLDDA]] internal slot:
|
function formatValue(ctx, value, recurseTimes, typedArray) { |
|
// Primitive types cannot have properties. |
|
if (typeof value !== 'object' && typeof value !== 'function') { |
|
return formatPrimitive(ctx.stylize, value, ctx); |
|
} |
|
if (value === null) { |
|
return ctx.stylize('null', 'null'); |
|
} |