Създаване на празен обект в JavaScript с {} или new Object()?

Има два различни начина за създаване на празен обект в JavaScript:

var objectA = {}
var objectB = new Object()

Има ли някаква разлика в начина, по който скриптовият механизъм ги обработва? Има ли някаква причина да се използва единият вместо другия?

По същия начин е възможно да се създаде празен масив, като се използва различен синтаксис:

var arrayA = []
var arrayB = new Array()

Те имат същия краен резултат, но бих добавил, че използването на буквалния синтаксис може да помогне на човек да свикне със синтаксиса на JSON (подмножество на буквалния синтаксис на обекти на JavaScript, което е подсилено с низове), така че това може да е добра практика.

И още нещо: може да се появят едва доловими грешки, ако забравите да използвате оператора new. Така че използването на литерали ще ви помогне да избегнете този проблем.

В крайна сметка това ще зависи от ситуацията, както и от предпочитанията.

Коментари (0)
var objectA = {}

е много по-бърз и, според моя опит, по-често използван, така че вероятно е най-добре да приемете 'стандарта' и да спестите малко писане.

Коментари (3)

По същество това е същото. Използвайте това, което ви е по-удобно.

Коментари (4)