DEV Community

Charlie Barajas
Charlie Barajas

Posted on

Memory Management in JS

Hello,

Today, I took a lecture from freecodecamp.com's Full Stack JavaScript course and learned about memory management. When a variable is created, it retains its memory address.

function createLargeArray() {
let largeArray = new Array(1000000);
return function() {
console.log(largeArray.length);
};
}

let printArrayLength = createLargeArray();
printArrayLength();

This snippet demonstrates that although createLargeArray() can't be trashed, it is still closed, and the return access means that more memory is used than expected.

Top comments (1)

Collapse
 
karanjamadar profile image
Karan

A more memory-efficient approach would be to extract only what you need

function createLargeArray() {
let largeArray = new Array(1000000);
let arrayLength = largeArray.length;
largeArray = null;
return function() {
console.log(arrayLength);
};
}