Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Предположим, разработчик Вася, который пишет библиотеку Vasya, не стесняется делать манки-патчи: из своей библиотеки он (пере)определяет методы стандартных объектов при помощи конструкции refine.
А вы попробуйте разок. Как-нибудь на досуге, на каком-нибудь маленьком проекте. О каких переработках и наработках вы говорите, я не понял.
Sugar неукоснительно следует спецификации ES6
Array.prototype.randomElement = function() {
return this[Math.floor(Math.random()*(this.length))];
};
Array.prototype.last = function() {
return this[this.length - 1];
}
String.prototype.last = function() {
return this[this.length - 1];
}
Array.prototype.randomElement = function() {
this.last = this[Math.floor(Math.random()*(this.length))];
return this.last;
};
Array.prototype.last = function() {
return this.last;
}
String.prototype.last = function() {
return this.split(" ").pop();
}
_.chain(data)
.find({ types: { main: 'context' } })
.result('context')
.where('full_url')
.value()
String.isCyrrilic = function(){return true}
"test".isCyrrilic()
TypeError: Object test has no method 'isCyrrilic'
String.isCyrrilic(obj) String.isCyrrilic = function(){return false}
Расширение нативных объектов JavaScript — зло ли это? Манифест SugarJS