B~Vladi,
Посмотрел. Не совсем разобрался ещё конечно, но в принципе понял, что имелось введу. Для объектов и я пользовался таким подходом, как раз когда делал но том же node.js - server push. Объект соединения при вызове строки возвращал md5 хеш.
Но использование такого подхода для строки, на мой взгляд, менее востребованно. Хотя тот пример, что я описывал не настолько не реальный:
(function(toString){
String.prototype.toString = function(encoding, currentEncoding){
if(!encoding) return toString;
else {
currentEncoding = this.encoding || 'utf8';
try{
return new Buffer(toString.call(this), currentEncoding).toString(this.encoding = encoding);
}catch(e){
return null; // Лучше ошибка вызвать конечно, но для примера так
}
}
};
}(String.prototype.toString));
Грубо говоря конечно. Так же в Strict Mode этот код упадёт
UPD: Таки currentEncoding можно опустить, Buffer сам по умолчанию выбирает uft8.