再談Javascript中的基本類型和引用類型(推薦)
一、基本類型和引用類型概述
js中數(shù)據(jù)類型的值包括:基本類型值和引用類型值
基本數(shù)據(jù)類型:undefined;null;boolean;number;string
引用類型值:保存在內(nèi)存中,js不允許直接訪問內(nèi)存位置,因此時操作引用而不是實際對象
二、如何檢測數(shù)據(jù)類型
1.基本數(shù)據(jù)類型的檢測:使用typeof
var s = “AAA”; alert(typeof s); //返回string
2.引用類型(對象類型)檢測:使用instanceof
alert(person instanceof Object); alert(person instanceof Array); alert(person instanceof Regexp);
3.特殊情況:instanceof檢測object始終返回true,檢測基本類型的時候始終返回false(因為基本類型不是對象)
typeof檢測函數(shù)時返回Function,檢測正則表達式時返回Object
三、基本類型和引用類型的區(qū)別
1.引用類型可以添加屬性,基本類型不可以
2.復制時,基本類型是直接復制了一個新的變量,新舊兩個變量之間沒有關系;
引用類型也復制了新的變量,但這個變量是一個指針,新舊兩個指針指向同一個對象
3.函數(shù)的參數(shù)傳遞:所有的參數(shù)傳遞原理都是將外部的變量通過復制的方式傳遞給函數(shù)的參數(shù)。因此,函數(shù)內(nèi)部對參數(shù)的操作對外部原變量無影響
下面分別以參數(shù)為基本類型和引用類型為例進行驗證:
function addTen(num){
num += 10;
return num;
}
var count = 20;
var result = addTen(count);
//這里內(nèi)部對num的操作不會影響外部count的值
function setName(obj){
obj.name = “Nicholas”;
obj = new Object();
obj.name = “Greg”;
}
var person = new Object();
setName(person);
alert(person.name); //返回”Nicholas”,說明仍然不影響外部的person對象的name
以上所述是小編給大家介紹的再談Javascript中的基本類型和引用類型(推薦) ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
JavaScript中for與forEach分別如何跳出循環(huán)
forEach的優(yōu)勢一個是它的回調(diào)函數(shù)形成了一個作用域,它的curItem和i不會像for循環(huán)一樣污染全局變量,這篇文章主要給大家介紹了關于JavaScript中for與forEach分別如何跳出循環(huán)的相關資料,需要的朋友可以參考下2024-01-01
js中頁面的重新加載(當前頁面/上級頁面)及frame或iframe元素引用介紹
用JavaScript刷新上級頁面和當前頁面在某些情況下還是比較實用的,感興趣的朋友可以了解下另外介紹一下frame或iframe元素的引用方法,希望本文對你有所幫助2013-01-01
Javascript中找到子元素在父元素內(nèi)相對位置的代碼
因為想自動定位到子元素,所以一直在找各種找尋元素位置的代碼。 不過總是找不到可以定位子元素相對位置的代碼2012-07-07
jQuery實現(xiàn)可收縮展開的級聯(lián)菜單實例代碼
這篇文章主要是對利用jQuery實現(xiàn)可收縮展開的級聯(lián)菜單的實例代碼進行了詳細的介紹,需要的朋友可以過來參考下,希望對大家有所幫助2013-11-11
js禁止document element對象選中文本實現(xiàn)代碼
禁止document element對象選中文本在某在情況下還是很有必要的接下來本文將使用js實現(xiàn),感興趣的各位可以參考下哈2013-03-03

