Node.js `structuredClone` objects do not preserve prototypes
When using structuredClone
with and transferring the original in Node.js, the resulting clone's prototype is not the same as the original's. However, in other environments, the prototype remains consistent.
const original = new ReadableStream();
const transfer = structuredClone(original, { transfer: [original] });
console.log(Object.getPrototypeOf(transfer) === ReadableStream.prototype);
In Node.js, the above snippet logs false
, however, in other environments, it logs true
.