/*
Maybe string compression is the solution for you.
This converts the data to byte arrays.
There are multiple implementations and algorithms around, for instance
LZMA-JS A standalone JavaScript implementation of the Lempel-Ziv-Markov chain (LZMA) compression algorithm.
*/
var str = "This is my compression test.";
console.log("Size of sample is: " + str.length);
var compressed = LZString.compress(str);
console.log("Size of compressed sample is: " + compressed.length);
str = LZString.decompress(compressed);
console.log("Sample is: " + str);
//solution 2
my_lzma = new LZMA("./lzma_worker.js");
my_lzma.compress("This is my compression test.", 1, function on_compress_complete(result) {
console.log("Compressed: " + result);
my_lzma.decompress(result, function on_decompress_complete(result) {
console.log("Decompressed: " + result);
}, function on_decompress_progress_update(percent) {
console.log("Decompressing: " + (percent * 100) + "%");
});
}, function on_compress_progress_update(percent) {
console.log("Compressing: " + (percent * 100) + "%");
});