возвращать this
бессмысленно, потому что если вызывающая сторона забыла добавить new
, то this
будет документом, а не экземпляром foo
.Обычно я запускаю конструктор с if(! (this instanceof foo)) return new foo();
или что-то в этом роде
Редактировать: после более тщательного чтения, если вы хотите избежать строгих ошибок и уже делаете это, да, return this
в конце обычно хорошая идея