diff --git a/lib/internal/v8/startup_snapshot.js b/lib/internal/v8/startup_snapshot.js index af5fb07925dc15..d0073e49078f9c 100644 --- a/lib/internal/v8/startup_snapshot.js +++ b/lib/internal/v8/startup_snapshot.js @@ -1,5 +1,10 @@ 'use strict'; +const { + ArrayPrototypePush, + ArrayPrototypeShift, +} = primordials; + const { validateFunction, } = require('internal/validators'); @@ -38,7 +43,7 @@ const deserializeCallbacks = []; let deserializeCallbackIsSet = false; function runDeserializeCallbacks() { while (deserializeCallbacks.length > 0) { - const { 0: callback, 1: data } = deserializeCallbacks.shift(); + const { 0: callback, 1: data } = ArrayPrototypeShift(deserializeCallbacks); callback(data); } } @@ -54,18 +59,18 @@ function addDeserializeCallback(callback, data) { setDeserializeCallback(runDeserializeCallbacks); deserializeCallbackIsSet = true; } - deserializeCallbacks.push([callback, data]); + ArrayPrototypePush(deserializeCallbacks, [callback, data]); } const serializeCallbacks = []; const afterUserSerializeCallbacks = []; // Callbacks to run after user callbacks function runSerializeCallbacks() { while (serializeCallbacks.length > 0) { - const { 0: callback, 1: data } = serializeCallbacks.shift(); + const { 0: callback, 1: data } = ArrayPrototypeShift(serializeCallbacks); callback(data); } while (afterUserSerializeCallbacks.length > 0) { - const { 0: callback, 1: data } = afterUserSerializeCallbacks.shift(); + const { 0: callback, 1: data } = ArrayPrototypeShift(afterUserSerializeCallbacks); callback(data); } } @@ -73,11 +78,11 @@ function runSerializeCallbacks() { function addSerializeCallback(callback, data) { throwIfNotBuildingSnapshot(); validateFunction(callback, 'callback'); - serializeCallbacks.push([callback, data]); + ArrayPrototypePush(serializeCallbacks, [callback, data]); } function addAfterUserSerializeCallback(callback, data) { - afterUserSerializeCallbacks.push([callback, data]); + ArrayPrototypePush(afterUserSerializeCallbacks, [callback, data]); } function initializeCallbacks() {