再談Javascript中的基本類型和引用類型(推薦)
一、基本類型和引用類型概述
js中數(shù)據(jù)類型的值包括:基本類型值和引用類型值
基本數(shù)據(jù)類型:undefined;null;boolean;number;string
引用類型值:保存在內(nèi)存中,js不允許直接訪問內(nèi)存位置,因此時(shí)操作引用而不是實(shí)際對象
二、如何檢測數(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,檢測基本類型的時(shí)候始終返回false(因?yàn)榛绢愋筒皇菍ο?
typeof檢測函數(shù)時(shí)返回Function,檢測正則表達(dá)式時(shí)返回Object
三、基本類型和引用類型的區(qū)別
1.引用類型可以添加屬性,基本類型不可以
2.復(fù)制時(shí),基本類型是直接復(fù)制了一個(gè)新的變量,新舊兩個(gè)變量之間沒有關(guān)系;
引用類型也復(fù)制了新的變量,但這個(gè)變量是一個(gè)指針,新舊兩個(gè)指針指向同一個(gè)對象
3.函數(shù)的參數(shù)傳遞:所有的參數(shù)傳遞原理都是將外部的變量通過復(fù)制的方式傳遞給函數(shù)的參數(shù)。因此,函數(shù)內(nèi)部對參數(shù)的操作對外部原變量無影響
下面分別以參數(shù)為基本類型和引用類型為例進(jìn)行驗(yàn)證:
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中的基本類型和引用類型(推薦) ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
javascript結(jié)合canvas實(shí)現(xiàn)圖片旋轉(zhuǎn)效果
圖片的旋轉(zhuǎn)可以說是一種效果,但是逐漸旋轉(zhuǎn)已經(jīng)不單單是屬于視覺效果那個(gè)范疇,其更具有使用性,功能性。照片有時(shí)候是需要橫過來的拍的,當(dāng)我們預(yù)覽或共享到web上時(shí)需要進(jìn)行旋轉(zhuǎn)。這個(gè)操作在以往可能更多的是交給軟件去完成,然后再將旋轉(zhuǎn)到正常角度的圖片發(fā)布到web上。2015-05-05
在layui框架中select下拉框監(jiān)聽更改事件的例子
今天小編就為大家分享一篇在layui框架中select下拉框監(jiān)聽更改事件的例子,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09

