Некоторые люди скажут вам, что добавление прототипов к исходным версиям JavaScript - зло. Например:
String.prototype.format = function(format, replacements) {
...
};
Теперь, для тех, кто согласен с этим (если вы этого не сделаете, не отвечайте, ваше мнение N / A; это не обсуждение прототипов), мы добавляем static методы для коренных жителей в равной степени как зло? (До сих пор и далее «статический» означает просто метод, контекст которого не является экземпляром.)
Например, учитывая, что создание String.prototype.format
- зло, приемлемо ли добавлять его в качестве статики?
String.format = function(format, replacements) {
...
};
Чем расширение нативного кода с помощью статического метода отличается с точки зрения передового опыта, чем расширение нативного кода с помощью прототипа? Либо вы каким-либо образом против расширения аборигенов, либо вы не видите кого-нибудь в лагере, что статические расширения приемлемы, а прототипы - нет?