JavaScript内存管理介绍

前端技术 2023/09/06 JavaScript

简介

低级语言,比如C,有低级的内存管理基元,想malloc(),free()。另一方面,JavaScript的内存基元在变量(对象,字符串等等)创建时分配,然后在他们不再被使用时“自动”释放。后者被称为垃圾回收。这个“自动”是混淆并给JavaScript(和其他高级语言)开发者一个错觉:他们可以不用考虑内存管理。

内存生命周期

不管什么程序语言,内存生命周期基本一致:

1.分配你所需要的内存
2.使用它(读、写)
3.当它不被使用时释放   ps:和“把大象装冰箱“一个意思

第一二部分过程在所有语言中都很清晰。最后一步在低级语言中很清晰,但是在像JavaScript等高级语言中,最后一步不清晰。

JavaScript的内存分配

变量初始化

为了不让程序员为分配费心,JavaScript在定义变量时完成内存分配。

复制代码 代码如下:

var n = 123; // 给数值变量分配内存
var s = \"azerty\"; // 给字符型

var o = {
  a: 1,
  b: null
}; // 为对象及其包含变量分配内存

var a = [1, null, \"abra\"]; // 为数组及其包含变量分配内存(就像对象)
function f(a){
  return a + 2;
} // 为函数(可调用的对象)分配内存

// 函数表达式也能分配一个对象
someElement.addEventListener(\'click\', function(){
  someElement.style.backgroundColor = \'blue\';
}, false);

本文地址:https://www.stayed.cn/item/17104

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。