這篇文章主要講解了“怎么理解并掌握JavaScript中變量和作用域”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“怎么理解并掌握JavaScript中變量和作用域”吧!
創新互聯公司服務項目包括安仁網站建設、安仁網站制作、安仁網頁制作以及安仁網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,安仁網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到安仁省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!
JavaScript的變量與其他語言的變量有很大區別。JavaScript變量不是強制類型的,決定了它只是在特定時間用于保存特定值的一個名字而已。由于不存在定義某個變量必須要保存何種數據類型值的規則,變量的值及其數據類型可以在腳本的生命周期內改變。
變量及作用域
基本類型和引用類型的值
常見的兩種不同數據類型的值:基本類型值和引用類型值。基本類型值指的是那些保存在棧內存中的簡單數據段,即這種值完全保存在內存中的一個位置。而引用類型值則是指那些保存在堆內存中的對象,意思是變量中保存的實際上只是一個指針,這個指針指向內存中的另一個位置,該位置保存對象。
將一個值賦給變量時,解析器必須確定這個值是基本類型值,還是引用類型值。基本類型值有以下幾種:Undefined、Null、Boolean、Number和String。這些類型在內存中分別占有固定大小的空間,他們的值保存在棧空間,我們通過按值來訪問的。
如果賦值的是引用類型的值,則必須在堆內存中為這個值分配空間。由于這種值的大小不固定,因此不能把它們保存到棧內存中。但內存地址大小的固定的,因此可以將內存地址保存在棧內存中。這樣,當查詢引用類型的變量時,先從棧中讀取內存地址,然后再通過地址找到堆中的值。
定義基本類型值和引用類型值的方式幾乎一致的:創建一個變量并為該變量賦值。不過,當這個值保存到變量中以后,對不同類型值可以執行的操作則大相徑庭。
var test = new Object(); //創建引用類型
test.name = 'qf'; //添加一個屬性
alert(test.name); //輸出
基本類型的值添加屬性,就會出現問題。
var test = 'qf'; //創建一個基本類型
test.age = 18; //給基本類型添加屬性
alert(test.age); //undefined
復制變量值
在變量復制方面,基本類型和引用類型也有所不同。基本類型復制的是值本身,而引用類型復制的是地址。
var test = 'qf';
var test2 = test;
檢測類型
要檢測一個變量的類型,我們可以通過typeof運算符來判別。
var test = 'qf';
alert(typeof (test)); //string
感謝各位的閱讀,以上就是“怎么理解并掌握JavaScript中變量和作用域”的內容了,經過本文的學習后,相信大家對怎么理解并掌握JavaScript中變量和作用域這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創新互聯,小編將為大家推送更多相關知識點的文章,歡迎關注!
當前題目:怎么理解并掌握JavaScript中變量和作用域
URL分享:http://m.2m8n56k.cn/article46/jdsceg.html
成都網站建設公司_創新互聯,為您提供服務器托管、全網營銷推廣、網頁設計公司、網站策劃、、電子商務
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯