第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

將參數(shù)傳遞給另一個(gè)javascript函數(shù)

將參數(shù)傳遞給另一個(gè)javascript函數(shù)

冉冉說 2019-07-29 16:00:49
將參數(shù)傳遞給另一個(gè)javascript函數(shù)我試過以下但沒有成功:function a(args){    b(arguments);}function b(args){    // arguments are lost?}a(1,2,3);在函數(shù)a中,我可以使用arguments關(guān)鍵字來訪問參數(shù)數(shù)組,在函數(shù)b中這些參數(shù)丟失了。有沒有辦法將參數(shù)傳遞給另一個(gè)javascript函數(shù),就像我嘗試做的那樣?
查看完整描述

3 回答

?
寶慕林4294392

TA貢獻(xiàn)2021條經(jīng)驗(yàn) 獲得超8個(gè)贊

用于.apply()對(duì)arguments函數(shù)進(jìn)行相同的訪問b,如下所示:

function a(){
    b.apply(null, arguments);}function b(){
   alert(arguments); //arguments[0] = 1, etc}a(1,2,3);

你可以在這里測(cè)試一下


查看完整回答
反對(duì) 回復(fù) 2019-07-29
?
婷婷同學(xué)_

TA貢獻(xiàn)1844條經(jīng)驗(yàn) 獲得超8個(gè)贊

傳播運(yùn)營商

spread運(yùn)算符允許在需要多個(gè)參數(shù)(用于函數(shù)調(diào)用)或多個(gè)元素(用于數(shù)組文字)的位置擴(kuò)展表達(dá)式。

ECMAScript ES6添加了一個(gè)新的運(yùn)算符,允許您以更實(shí)際的方式執(zhí)行此操作... Spread運(yùn)算符。

不使用該apply方法的示例:

function a(...args){
  b(...args);
  b(6, ...args, 8) // You can even add more elements}function b(){
  console.log(arguments)}a(1, 2, 3)

Note 如果您的瀏覽器仍使用ES5,則此代碼段會(huì)返回語法錯(cuò)誤。

編者注:由于代碼片段使用console.log(),您必須打開瀏覽器的JS控制臺(tái)才能看到結(jié)果 - 沒有頁內(nèi)結(jié)果。

它會(huì)顯示以下結(jié)果:

簡而言之,如果您使用數(shù)組,擴(kuò)展運(yùn)算符可以用于不同的目的,因此它也可以用于函數(shù)參數(shù),您可以在官方文檔中看到類似的示例:Rest參數(shù)


查看完整回答
反對(duì) 回復(fù) 2019-07-29
?
青春有我

TA貢獻(xiàn)1784條經(jīng)驗(yàn) 獲得超8個(gè)贊

沒有任何其他的答案中提供的解釋是,原來的參數(shù)仍然可用,但不是在原來的位置arguments的對(duì)象。

所述arguments對(duì)象包含提供給函數(shù)每個(gè)實(shí)際參數(shù)的一個(gè)元件。當(dāng)你調(diào)用a你提供三個(gè)參數(shù):編號(hào)12和,3。所以,arguments包含[1, 2, 3]。

function a(args){
    console.log(arguments) // [1, 2, 3]
    b(arguments);}

b但是,當(dāng)你調(diào)用時(shí),你只傳遞一個(gè)參數(shù):a's argumentsobject。所以arguments包含[[1, 2, 3]](即一個(gè)元素,它是具有包含原始參數(shù)的屬性aarguments對(duì)象a)。

function b(args){
    // arguments are lost?
    console.log(arguments) // [[1, 2, 3]]}a(1,2,3);

正如@Nick演示的那樣,您可以使用在調(diào)用中apply提供set arguments對(duì)象。

以下結(jié)果取得了相同的結(jié)果:

function a(args){
    b(arguments[0], arguments[1], arguments[2]); // three arguments}

apply在一般情況下是正確的解決方案。


查看完整回答
反對(duì) 回復(fù) 2019-07-29
  • 3 回答
  • 0 關(guān)注
  • 741 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)