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

為了賬號安全,請及時綁定郵箱和手機立即綁定

JavaScript 傳參問題

foo(x,y,z){
'use strict';
arguments[0]=10;
console.log(x);?
}
foo(1,2);

輸出x的值不是應(yīng)該為1嗎?課件上的輸出為10是為什么呢?

正在回答

2 回答

因為argumnets[0] 就是第一個參數(shù),即x

0 回復 有任何疑惑可以回復我~
#1

ZTON

回頭看了下,課件上輸出10 是老師在6-4節(jié)講解時的結(jié)果,結(jié)果不是use strict 模式下的。 use strict 模式的結(jié)果是口頭說的
2016-12-06 回復 有任何疑惑可以回復我~
#2

請問你是3426834 提問者 回復 ZTON

你說的對,回頭看了看,那個use strict是后來加上的,輸出的確是1。太感謝你了!
2016-12-08 回復 有任何疑惑可以回復我~

在嚴格模式下,arguments變成了靜態(tài)副本,和傳入的參數(shù)沒有綁定關(guān)系了,但是如果傳入的參數(shù)是對象的話,修改arguments屬性是會對傳入?yún)?shù)屬性會影響。比如:

'use strict';
!function(a){
arguments[0].x = 100;
console.log(a.x);//100 ?因為在嚴格模式下,如果傳入的參數(shù)是對象的話,修改arguments屬性是會對傳入?yún)?shù)屬性會影響的
}(x:1);

0 回復 有任何疑惑可以回復我~
#1

慕碼人1183263

額,,不好意思,沒有看清楚你的問題,忽略掉我的回答就是了
2017-03-27 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript深入淺出
  • 參與學習       281095    人
  • 解答問題       1054    個

由淺入深學習JS語言特性,且解析JS常見誤區(qū),從入門到掌握

進入課程

JavaScript 傳參問題

我要回答 關(guān)注問題
微信客服

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

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

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