淺談JS的基礎類型與引用類型
兩種類型:
ECMAScript變量包含兩種不同類型的值:基本類型值、引用類型值;
基本類型值:指的是保存在棧內(nèi)存中的簡單數(shù)據(jù)段;
引用類型值:指的是那些保存在堆內(nèi)存中的對象,意思是,變量中保存的實際上只是一個指針,這個指針指向內(nèi)存中的另一個位置,由該位置保存對象;
兩種訪問方式:
基本類型值:按值訪問,操作的是他們實際保存的值;
引用類型值:按引用訪問,當查詢時,我們需要先從棧中讀取內(nèi)存地址,然后再順藤摸瓜地找到保存在堆內(nèi)存中的值;
兩種類型復制
1.基本類型變量的復制:從一個變量向一個變量復制時,會在棧中創(chuàng)建一個新值,然后把值復制到為新變量分配的位置上;
2.引用類型變量的復制:復制的是存儲在棧中的指針,將指針復制到棧中為新變量分配的空間中,而這個指針副本和原指針指向存儲在堆中的同一個對象;
復制操作結(jié)束后,兩個變量實際上將引用同一個對象;因此改變其中的一個,將影響另一個;
以上這篇淺談JS的基礎類型與引用類型就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript鼠標事件監(jiān)聽、觸發(fā)時機和觸發(fā)順序?qū)嵗v解
事件監(jiān)聽是Web開發(fā)中非常重要的一個概念,掌握了它的用法,可以讓我們實現(xiàn)更加豐富和動態(tài)的交互效果,這篇文章主要給大家介紹了關(guān)于JavaScript鼠標事件監(jiān)聽、觸發(fā)時機和觸發(fā)順序的相關(guān)資料,需要的朋友可以參考下2024-01-01Javascript 類型轉(zhuǎn)換、封閉函數(shù)及常見內(nèi)置對象操作示例
這篇文章主要介紹了Javascript 類型轉(zhuǎn)換、封閉函數(shù)及常見內(nèi)置對象操作,結(jié)合實例形式分析了JavaScript類型顯示轉(zhuǎn)換、隱式轉(zhuǎn)換、變量作用域、封閉函數(shù)及常用內(nèi)置對象相關(guān)操作技巧,需要的朋友可以參考下2019-11-11JavaScript中for與forEach分別如何跳出循環(huán)
forEach的優(yōu)勢一個是它的回調(diào)函數(shù)形成了一個作用域,它的curItem和i不會像for循環(huán)一樣污染全局變量,這篇文章主要給大家介紹了關(guān)于JavaScript中for與forEach分別如何跳出循環(huán)的相關(guān)資料,需要的朋友可以參考下2024-01-01JS中比Switch...Case更優(yōu)雅的多條件判斷寫法
這篇文章主要給大家介紹了關(guān)于JS中比Switch...Case更優(yōu)雅的多條件判斷寫法,文中通過示例代碼介紹的非常詳細,對大家學習或者使用JS具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-09-09JavaScript兼容性總結(jié)之獲取非行間樣式案例
這篇文章主要介紹了JavaScript兼容性總結(jié)之獲取非行間樣式的相關(guān)資料,需要的朋友可以參考下2016-08-08