最新文章專題視頻專題問答1問答10問答100問答1000問答2000關(guān)鍵字專題1關(guān)鍵字專題50關(guān)鍵字專題500關(guān)鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專題關(guān)鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當(dāng)前位置: 首頁 - 科技 - 知識(shí)百科 - 正文

JS引用傳遞與值傳遞的區(qū)別與用法分析

來源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:13:36
文檔

JS引用傳遞與值傳遞的區(qū)別與用法分析

JS引用傳遞與值傳遞的區(qū)別與用法分析:本文實(shí)例講述了JS引用傳遞與值傳遞的區(qū)別與用法。分享給大家供大家參考,具體如下: 這里詳細(xì)解釋JS值傳遞和引用傳遞以及二者的區(qū)別。 我們先來解釋一下這兩個(gè)的基本概念吧。 函數(shù)調(diào)用中,傳遞是一個(gè)數(shù)值,我們稱為 值傳遞。 函數(shù)調(diào)用中,傳遞是對象,一
推薦度:
導(dǎo)讀JS引用傳遞與值傳遞的區(qū)別與用法分析:本文實(shí)例講述了JS引用傳遞與值傳遞的區(qū)別與用法。分享給大家供大家參考,具體如下: 這里詳細(xì)解釋JS值傳遞和引用傳遞以及二者的區(qū)別。 我們先來解釋一下這兩個(gè)的基本概念吧。 函數(shù)調(diào)用中,傳遞是一個(gè)數(shù)值,我們稱為 值傳遞。 函數(shù)調(diào)用中,傳遞是對象,一

本文實(shí)例講述了JS引用傳遞與值傳遞的區(qū)別與用法。分享給大家供大家參考,具體如下:

這里詳細(xì)解釋JS值傳遞和引用傳遞以及二者的區(qū)別。

我們先來解釋一下這兩個(gè)的基本概念吧。

函數(shù)調(diào)用中,傳遞是一個(gè)數(shù)值,我們稱為 “值傳遞”。
函數(shù)調(diào)用中,傳遞是對象,一般稱為 “引用傳遞”。

現(xiàn)在這里總體上說明,這二者的本質(zhì)區(qū)別就在于傳遞的數(shù)據(jù)類型不一樣,值傳遞傳遞的是一個(gè)值,而引用傳遞傳遞的是一個(gè)對象。

看一下代碼以及代碼中的注釋。

一、引入

function func(a)
{
 a++;
}
// 因?yàn)楹瘮?shù)都沒有調(diào)用,所以找不到 a
console.log(a);
//結(jié)果明顯是undefined了。
//所以看下面兩個(gè)例子。

二、值傳遞

var a = 5;
function func(a)
{
 // 函數(shù)中開辟了一個(gè)空間 a == 5
 // a==6
 a++;
}
func(5);
// 結(jié)果,函數(shù)沒有改變到 外部 a 的值,所以,結(jié)果是 5
console.log(a);
// 函數(shù)調(diào)用中,傳遞是一個(gè)數(shù)值,我們稱為 “值傳遞”
// 特點(diǎn): 有多個(gè)不同的空間,空間都是在棧中的
// 所以 修改函數(shù)中的空間,對外部空間是沒有影響的

三、引用傳遞

var a = 5;
function func()
{
 // 開辟函數(shù) 的空間
 // 函數(shù)中沒有 a 的空間
 // 所以,系統(tǒng)會(huì)自動(dòng)向外面搜索
 // 這里是對外部的變量進(jìn)行修改
 a++;
}
func(5);
// 因?yàn)楹瘮?shù)中修改了外部的變量 a,所以,值發(fā)生改變了,是 6
console.log(a);
// 函數(shù)調(diào)用中,傳遞是對象,一般稱為 “引用傳遞”
// 特點(diǎn): 實(shí)在存數(shù)據(jù)的空間只有一份

詳細(xì)的說明我都在代碼中注釋說明了,歡迎指點(diǎn)指點(diǎn)指正。

更多關(guān)于JavaScript相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《javascript面向?qū)ο笕腴T教程》、《JavaScript錯(cuò)誤與調(diào)試技巧總結(jié)》、《JavaScript數(shù)據(jù)結(jié)構(gòu)與算法技巧總結(jié)》、《JavaScript遍歷算法與技巧總結(jié)》及《JavaScript數(shù)學(xué)運(yùn)算用法總結(jié)》

希望本文所述對大家JavaScript程序設(shè)計(jì)有所幫助。

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

JS引用傳遞與值傳遞的區(qū)別與用法分析

JS引用傳遞與值傳遞的區(qū)別與用法分析:本文實(shí)例講述了JS引用傳遞與值傳遞的區(qū)別與用法。分享給大家供大家參考,具體如下: 這里詳細(xì)解釋JS值傳遞和引用傳遞以及二者的區(qū)別。 我們先來解釋一下這兩個(gè)的基本概念吧。 函數(shù)調(diào)用中,傳遞是一個(gè)數(shù)值,我們稱為 值傳遞。 函數(shù)調(diào)用中,傳遞是對象,一
推薦度:
標(biāo)簽: 使用 js 的區(qū)別
  • 熱門焦點(diǎn)

最新推薦

猜你喜歡

熱門推薦

專題
Top