|
在正式開始之前,我想先說兩句,理解Javascript系列博文是通過帶領大家分析Javascript執行時的內存分配情況,來解釋Javascript原理,具體會涵蓋Javascript預加載,閉包原理,面象對象,執行模型,對象模型...,文章的視角很特別,也非常深入,希望大家能接受這種形式,并提供寶貴意見。
原始值和引用值
在ECMAScript中,變量可以存放兩種類型的值,即原始值和引用值。原始值指的就是代表原始數據類型(基本數據類型)的值,即Undefined,Null,Number,String,Boolean類型所表示的值。引用值指的就是復合數據類型的值,即Object,Function,Array,以及自定義對象,等等。
棧和堆
與原始值與引用值對應存在兩種結構的內存即棧和堆。棧是一種后進先出的數據結構,在Javascript中可以通過Array來模擬棧的行為
var arr = []; //創建一個棧arr.push("apple");//壓入元素"apple" ["apple"]arr.push("orange");//壓入元素"orange" ["apple","orange"]arr.pop();//彈出"orange" ["apple"]arr.push("banana");//壓入元素"banana" ["apple","banana"]
it知識庫:理解Javascript_01_理解內存分配,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。