JS的基本語法
變量(variable)
變量聲明
聲明、賦值分解
單一var
命名規則
- 變量名必須以英文字母、_ 、$ 開頭
- 變量名可以包括英文字母、_ 、$、數字
- 不可以使用系統的關鍵字、保留字作為變量名
聲明、賦值分解 、 單一var
不可以使用系統的關鍵字、保留字作為變量名
值類型 – 數據類型
不可改變的原始值(棧數據)
Number、String、Boolean、undefined、null
引用值(堆數據)
array、object、function
那么你就會問了,啥是堆?啥是棧?
剛才我們定義的變量,其實電腦內部會在內存中,分出相應的空間來存儲。
值類型是存在棧里的,存取速度都很快。
棧的特點
先進后出,類似羽毛球桶,先放進去的羽毛球,要想拿出來,必須先把后放進去的羽毛球拿出來。
引用類型的真實數據存在堆里。
堆的特點
堆就像一個倉庫,隨機存,直接取,沒有像棧這么麻煩。
棧中只保存了引用地址,真實數據其實存在堆里,如果想要獲取真實的數據,就要通過引用地址去堆里找。
不可改變的原始值 是啥意思呢?
其實棧里的數據,計算機是不會刪除的,比如你
var a = 10;
a = 20;
那么就會變成這樣
var a = 10;
a = 20;
也就是說,之前的 a = 10 的這個 10 ,還是保存着的,計算機不會刪掉。
那怎么樣才能刪掉呢?
你只要不停的創建變量,不斷的賦值,直到棧滿了,沒空間了,計算機才會用新值 覆蓋舊值。