javascript原始值和對象引用實例分析
本文實例講述了javascript原始值和對象引用的方法。分享給大家供大家參考。具體分析如下:
一句話來說:原始值是不可變的,而對象引用是可變的。
js中的原始值(undefined、null、布爾值、數(shù)字和字符串)與對象(包括數(shù)組和函數(shù))有著本質(zhì)的區(qū)別。原始值是不可更改的,任何方法都無法更改一個原始值;對于字符串來說,字符串中所有的方法看上去返回了一個修改后的字符串,實際上返回的是一個新的字符串值:
var str="hello world"; s.toUpperCase(); s; //仍然不變
原始值的比較是值的比較:只有它們的值相等時它們才想等。
對象和原始值不同,首先它們是可變的;其次對象的比較并非值的比較;對象的比較皆為引用的比較:當(dāng)且僅當(dāng)它們引用同一個基本對象時,它們才想等。
若想比較2個單獨的對象或數(shù)組,必須比較它們的屬性或元素,如下所示:
function equ_arrays(a,b){
if(a.length != b.lenght) return false;
for(var i=0;i<a.length;i++)
if(a[i] !== b[i]) return false;
return true;
}
希望本文所述對大家的javascript程序設(shè)計有所幫助。
相關(guān)文章
詳釋JavaScript執(zhí)行環(huán)境與執(zhí)行棧
一句話就可以概括:代碼 ( 包括函數(shù) ) 執(zhí)行時所需要的所有信息就是執(zhí)行環(huán)境。由于 ES 歷經(jīng)多個版本,所以執(zhí)行環(huán)境的標(biāo)準(zhǔn)也一直在變。文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04

