Книга Крокфорда, JavaScript: "Хорошие детали", говорит (на странице 114), что функции конструктора всегда должны иметь имена с начальной заглавной буквой (то есть точкой), а имена функций с начальными прописными буквами должны использоваться только с конструктор (все остальное должно быть lowerCase).
Это соглашение помогает нам избежать забывания использовать оператор new
с конструкторскими функциями.
Далее он говорит, что "еще лучше стратегия совладания заключается в том, чтобы не использовать new
вообще".
Мой вопрос в том, как мы программируем JavaScript без использования new
вообще?
- Мы можем избегать
new Object()
иnew Array()
с буквами{}
и[]
. - Мы можем избежать
new Number()
,new Boolean()
иnew String()
с помощью0
,true
и''
. - Мы можем избежать
new RegExp()
с чем-то вроде/pattern/
.
Как нам избежать new Date()
?
И, самое главное, как нам избежать использования new
с нашими собственными пользовательскими объектами?