鍍金池/ 問答/HTML/ 下面這個(gè)情況里X并未被賦值,為何會返回6?

下面這個(gè)情況里X并未被賦值,為何會返回6?

function myFunction(a,b) {
    if (a>b) 
    {return; }
    x=a+b };
myFunction(2,1); 
console.log(x);//6

這是runoob Javascript函數(shù)頁面講return用法的例子,我想試一下符合if條件直接返回的情況下x的值會是什么情況,結(jié)果控制臺返回了6。這是什么原理?

回答
編輯回答
臭榴蓮

Uncaught ReferenceError: x is not defined at <anonymous>:6:13
代碼中x未被定義,你可能是在其他地方定義了全局x=6了,所以才會出現(xiàn)你說的x打印出來是6

2018年1月15日 13:31
編輯回答
入她眼

你不是在控制臺直接寫的代碼,然后以前的時(shí)候有一個(gè)x是6吧。。。

2017年3月26日 21:15
編輯回答
嘟尛嘴

如果只有這一部分代碼加全局變量x的話,怎么看x都不會是6啊,是不是你外面代碼給x賦值了?可以在聲明一個(gè)其它的變量試一下

2018年9月12日 04:20
編輯回答
枕邊人

感覺你之前使用varx賦值過。

2017年3月3日 08:29
編輯回答
夏夕

試了undefined。你檢查下代碼,貼全

2017年5月5日 17:09
編輯回答
凹凸曼

這個(gè)x是全局變量。你在別的地方設(shè)了x = 6;建議看書從頭閱讀。

2017年11月12日 10:56
編輯回答
憶往昔
VM148:6 Uncaught ReferenceError: x is not defined
    at <anonymous>:6:13
2017年12月2日 09:38