Первый стиль более распространен.Одна из причин заключается в том, что в цепочках на каждом шаге цепочки можно использовать только первый стиль:
foo(bar, baz).zap(yota).penumbra
Однако учтите, что
new Foo.bar()
означает «создать новый экземплярFoo.bar
, тогда как
(new Foo).bar()
означает «создать новый экземпляр Foo
и вызвать метод bar
для этого экземпляра». По аналогии с new
я предпочитаю использовать второй стильпри использовании функции типа Node's require
:
(require 'crypto').createHash 'sha1'