溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

JavaScript變量有哪些類型

發(fā)布時(shí)間:2021-07-21 10:28:49 來(lái)源:億速云 閱讀:143 作者:chen 欄目:web開(kāi)發(fā)

本篇內(nèi)容主要講解“JavaScript變量有哪些類型”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“JavaScript變量有哪些類型”吧!

JavaScript變量有9種類型:1、string類型;2、number類型;3、boolean類型;4、null類型;5、undefined類型;6、Object類型;7、Array類型;8、Function類型;9、Symbol類型。

本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

JavaScript中的變量類型有哪些?

  • 值類型:字符串(string)、數(shù)值(number)、布爾值(boolean)、null、undefined

  • 引用類型:對(duì)象(Object)、數(shù)組(Array)、函數(shù)(Function)

  • ES6 引入了一種新的原始數(shù)據(jù)類型:Symbol,表示獨(dú)一無(wú)二的值。

值類型和引用類型的區(qū)別

值類型:

  • 占用空間固定,保存在棧中(當(dāng)一個(gè)方法執(zhí)行時(shí),每個(gè)方法都會(huì)建立自己的內(nèi)存棧,在這個(gè)方法內(nèi)定義的變量將會(huì)逐個(gè)放入這塊棧內(nèi)存里,隨著方法的執(zhí)行結(jié)束,這個(gè)方法的內(nèi)存棧也將自然銷毀了。因此,所有在方法中定義的變量都是放在棧內(nèi)存中的;棧中存儲(chǔ)的是基礎(chǔ)變量以及一些對(duì)象的引用變量,基礎(chǔ)變量的值是存儲(chǔ)在棧中,而引用變量存儲(chǔ)在棧中的是指向堆中的數(shù)組或者對(duì)象的地址,這就是為何修改引用類型總會(huì)影響到其他指向這個(gè)地址的引用變量。

  • 保存與復(fù)制的是值本身

  • 使用typeof檢測(cè)數(shù)據(jù)的類型

  • 基本類型數(shù)據(jù)是值類型

引用類型:

  • 占用空間不固定,保存在堆中(當(dāng)我們?cè)诔绦蛑袆?chuàng)建一個(gè)對(duì)象時(shí),這個(gè)對(duì)象將被保存到運(yùn)行時(shí)數(shù)據(jù)區(qū)中,以便反復(fù)利用(因?yàn)閷?duì)象的創(chuàng)建成本通常較大),這個(gè)運(yùn)行時(shí)數(shù)據(jù)區(qū)就是堆內(nèi)存。堆內(nèi)存中的對(duì)象不會(huì)隨方法的結(jié)束而銷毀,即使方法結(jié)束后,這個(gè)對(duì)象還可能被另一個(gè)引用變量所引用(方法的參數(shù)傳遞時(shí)很常見(jiàn)),則這個(gè)對(duì)象依然不會(huì)被銷毀,只有當(dāng)一個(gè)對(duì)象沒(méi)有任何引用變量引用它時(shí),系統(tǒng)的垃圾回收機(jī)制才會(huì)在核實(shí)的時(shí)候回收它。

  • 保存與復(fù)制的是指向?qū)ο蟮囊粋€(gè)指針

  • 使用instanceof檢測(cè)數(shù)據(jù)類型

  • 使用new()方法構(gòu)造出的對(duì)象是引用型

// 值類型:Number、string、bollean、undefined
var a = 100
var b = a
a = 200
console.log(b) // 100
 
 
// 引用類型:對(duì)象、數(shù)組、函數(shù)、null(空指針)
// 可以擴(kuò)展屬性
var a = {age:20}
var b = a
b.age = 21
console.log(a.age) // 21
 
typeof undefined // undefined
typeof 'abc' // string
typeof 123 // number
typeof true // boolean
// typeof 區(qū)分不出來(lái)引用類型(除了函數(shù))
typeof {} // object
typeof [] // object
typeof null // object
typeof console.log //function

到此,相信大家對(duì)“JavaScript變量有哪些類型”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI