2017-10-13 123 views
0

在以下代碼中,輸出a。其他變量名稱之後的變量賦值

var variable = "a", i, len; 
alert(variable); 

第一行做什麼?我所能看到的是將"a"分配給變量。但ilen會發生什麼?

+1

你可以在這裏找到你的答案:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/var – C2486

回答

3

除了被聲明爲局部變量之外,沒有任何內容。

var variable = "a", i, len; 

相當於

var variable = "a"; 
var i; 
var len; 

var聲明一個局部變量的當前功能範圍。

+0

它們是否有點奇怪,他們是在等號的右側? 'var變量,我,len =「a」'會更有意義。 – Sahand

+1

是的,但是'變量'和'我'將會是未定義的,'len'設置爲''a''而不是 – phuzi

+0

不是本地的,實際上它看起來是全球性的。 –

3
var variable = "a", i, len; 

通常等同於

var variable = "a"; // declared and assigned the value "a" 
var i; // just declared 
var len; // just declared 

首先是剛剛宣佈在同一行多個變量。

+0

@downvoter,我在這裏錯過了什麼嗎? –

0

在這一行var variable = "a", i, len;發生了兩件事:變量聲明和變量初始化。這相當於

var variable = "a" 
var i 
var len 

當變量variable聲明,並與價值"a"初始化。變量ilen只聲明但未初始化。尚未初始化的變量獲得值undefined

0

我們可以聲明任意數目的單VAR變量keyword.If你不指定默認值將是未定義任何價值。