2012-12-11 97 views
0

現在讓我再次感到困惑。在該文件中,我看到下面的代碼this.xCenter = options.xPos;但是,我找不到this對象中定義xCenter的地方。然後我添加一個像this.myattr = 12;這樣的行,令我驚訝的是,代碼正常運行並沒有顯示任何錯誤。在我知道運行結果之前,我認爲代碼應該運行不當,因爲this沒有定義myattr的屬性,所以我很困惑。這與Java的語法完全不同。反過來,我認爲這是一種方式爲對象定義/添加一個屬性,我的假設是正確的,或者只是代碼意味着別的東西,傢伙?如何在Javascript中添加屬性到'this'對象

+0

「這與Java的語法真的不同」 - 正確:Javascript和Java是兩種截然不同的語言,其中一種是真實的,而另一種則不然。忽略名稱「Javascript」 - 與Java沒有真正的關係。 –

+0

順便說一句jQuery是一個Javascript庫,與這個 –

回答

6

Javascript是一種動態(弱)類型的語言。您可以根據需要添加屬性。他們不需要首先聲明。

例如:

var obj = {};  // create an object but we don't define any properties 
obj.foo = "hello"; // property foo just got created 
obj.bar = 10;  // and same for bar 
console.log(obj); 

爪哇另一方面是一種靜態(和強)類型的語言,因此變量和屬性具有在使用前進行聲明。

+0

無關,這要歸功於xbonez,現在我的困惑已經消失了 – stardust

相關問題