更新時(shí)間:2024-01-30 來源:黑馬程序員 瀏覽量:
在JavaScript中,基本類型和復(fù)雜類型的數(shù)據(jù)都是存儲(chǔ)在內(nèi)存中的不同位置。
1.基本類型(Primitive Types):
(1)基本類型包括數(shù)字(Number)、字符串(String)、布爾值(Boolean)、null、undefined 和 Symbol。
(2)基本類型的值直接存儲(chǔ)在棧內(nèi)存中,棧內(nèi)存是一種簡(jiǎn)單的內(nèi)存結(jié)構(gòu),用于存儲(chǔ)簡(jiǎn)單的數(shù)據(jù)和引用。
(3)當(dāng)你創(chuàng)建一個(gè)基本類型的變量時(shí),該變量直接存儲(chǔ)變量值,而且它們是按值訪問的,即變量直接包含其數(shù)據(jù)。
var num = 42; // 基本類型變量 var str = "Hello"; // 基本類型變量
2.復(fù)雜類型(Complex Types):
(1)復(fù)雜類型包括對(duì)象(Object)和數(shù)組(Array),還有函數(shù)(Function)等。
(2)復(fù)雜類型的值存儲(chǔ)在堆內(nèi)存中。堆內(nèi)存是一種相對(duì)較大的、靈活的內(nèi)存池,用于存儲(chǔ)對(duì)象和復(fù)雜數(shù)據(jù)結(jié)構(gòu)。
(3)復(fù)雜類型的變量實(shí)際上是存儲(chǔ)在棧內(nèi)存中的一個(gè)引用,該引用指向堆內(nèi)存中實(shí)際的數(shù)據(jù)。
var obj = { key: "value" }; // 復(fù)雜類型變量,存儲(chǔ)在堆內(nèi)存中 var arr = [1, 2, 3]; // 復(fù)雜類型變量,存儲(chǔ)在堆內(nèi)存中
所以,基本類型是直接存儲(chǔ)在棧內(nèi)存中,而復(fù)雜類型是在棧內(nèi)存中存儲(chǔ)一個(gè)引用,實(shí)際數(shù)據(jù)存儲(chǔ)在堆內(nèi)存中。這種區(qū)別在涉及到賦值、傳遞參數(shù)和比較時(shí)會(huì)產(chǎn)生一些不同的行為。
【AI設(shè)計(jì)】北京143期畢業(yè)僅36天,全員拿下高薪offer!黑馬AI設(shè)計(jì)連續(xù)6期100%高薪就業(yè)
2025-09-19【跨境電商運(yùn)營(yíng)】深圳跨境電商運(yùn)營(yíng)畢業(yè)22個(gè)工作日,就業(yè)率91%+,最高薪資達(dá)13500元
2025-09-19【AI運(yùn)維】鄭州運(yùn)維1期就業(yè)班,畢業(yè)14個(gè)工作日,班級(jí)93%同學(xué)已拿到Offer, 一線均薪資 1W+
2025-09-19【AI鴻蒙開發(fā)】上海校區(qū)AI鴻蒙開發(fā)4期5期,距離畢業(yè)21天,就業(yè)率91%,平均薪資14046元
2025-09-19【AI大模型開發(fā)-Python】畢業(yè)33個(gè)工作日,就業(yè)率已達(dá)到94.55%,班均薪資20763元
2025-09-19【AI智能應(yīng)用開發(fā)-Java】畢業(yè)5個(gè)工作日就業(yè)率98.18%,最高薪資 17.5k*13薪,全班平均薪資9244元
2025-09-19