可能重複:
new MyObject(); vs new MyObject;是什麼在JavaScript中的新對象和新的對象()之間的區別
在一些文章中,我看到下面的語句在JavaScript來創建新的對象:
var myObject = new Object;
和在一些地點:
var myObject = new Object();
兩個語句之間有什麼區別或者只是簡寫?
可能重複:
new MyObject(); vs new MyObject;是什麼在JavaScript中的新對象和新的對象()之間的區別
在一些文章中,我看到下面的語句在JavaScript來創建新的對象:
var myObject = new Object;
和在一些地點:
var myObject = new Object();
兩個語句之間有什麼區別或者只是簡寫?
沒有區別。當使用函數作爲構造函數時(即使用new
運算符)並且沒有參數時,括號是可選的。當不使用new
運算符時,在調用函數時總是需要括號。
正如在另一個答案中指出的那樣,通常最好使用對象文字。它擁有超過使用Object
構造具有以下優點:
var foo = { bar: "cheese" };
)Object
功能存在的(不可能)覆蓋。非常感謝。 – daljit 2012-02-20 11:37:56
+1非常好的答案,不知道最後一件事(不會影響對象函數的(不太可能)事件被覆蓋。)。 – helpermethod 2012-02-20 12:08:01
沒有區別。只是在這種特殊情況下,您可以省略()
。
所以 新的對象()
和
new Object
是等價的。
順便說一句,在使用new Object()
而不是{}
也沒有區別。使用任何你喜歡的。
類似的問題:http://stackoverflow.com/questions/3034941/new-myobject-vs-new-myobject – 2012-02-20 11:26:16