UTF-8 deserialization
JavaScript, UTF-8
Сериализация UTF-8 наоборот.
String.prototype.deserialize = function() {
var deserialized = '';
for (var i = 0; i < this.length; ++i) {
var c = this.charCodeAt(i);
if (c > 0x80) {
var d = this.charCodeAt(++i);
if (c > 0xe0) {
var e = this.charCodeAt(++i);
c = (c & 0xf) << 12 | (d & 0x3f) << 6 | e & 0x3f;
} else {
c = (c & 0x1f) << 6 | d & 0x3f;
}
}
deserialized += String.fromCharCode(c);
}
return deserialized;
};
