Comprimir cadena en JavaScript

Anika Tabassum Era 12 octubre 2023
  1. Use js-string-compression para comprimir cadenas en JavaScript
  2. Use la biblioteca LZString para comprimir cadenas en JavaScript
Comprimir cadena en JavaScript

En JavaScript, puede haber una amplia gama de compresión, la compresión de archivos como gzip y muchos más. Aquí, discutiremos dos formas de comprimir una cadena.

Inicialmente, destacaremos el algoritmo de Huffman. Y más adelante, cubriremos la forma LZString de resolver la tarea.

Use js-string-compression para comprimir cadenas en JavaScript

Primero configuraremos una carpeta que consiste en un archivo (okay.js). Estamos usando VSCode para el editor de código, y en su terminal escribiremos el siguiente comando.

npm i js-string-compression

Esto agregará el paquete necesario para implementar el algoritmo de Huffman. Una vez que los paquetes estén instalados, tendrá un archivo package.json y package-lock.json en el directorio raíz.

El paquete.json debería tener un aspecto similar al siguiente.

{
  "dependencies": {
    "js-string-compression": "^1.0.1"
  }
}

En la siguiente etapa, escribiremos nuestro código básico, definiendo una cadena y configurando los parámetros que queremos verificar. Revisemos las líneas de código.

Fragmento de código:

var jsscompress = require('js-string-compression');
var raw_text =
    'Lorem Ipsum is simply dummy text of the printing and typesetting industry.';
var hm = new jsscompress.Hauffman();
var compressed = hm.compress(raw_text);
console.log('before compressed: ' + raw_text);
console.log('length: ' + raw_text.length);
console.log('after compressed: ' + compressed);
console.log('length: ' + compressed.length);
console.log('decompressed: ' + hm.decompress(compressed));

Producción:

Use js-string-compression para comprimir cadenas

Use la biblioteca LZString para comprimir cadenas en JavaScript

Para comprimir su cadena a través de la biblioteca LZString, necesitamos tener un archivo HTML y un archivo js. El LZString es una implementación de Perl (lz-string) para comprimir cadenas.

Para importar las dependencias, podemos seguir la línea de comando a continuación en nuestra terminal del directorio raíz, donde tenemos nuestros archivos HTML y js.

npm install -g lz-string

A continuación, crearemos un archivo HTML llamado new.html y un archivo new.js. También crearemos otro archivo llamado lz-string.js, donde almacenaremos la implementación de LZString.

Para el código completo, consideramos este repositorio.

Ahora, escribiremos algunas líneas en nuestro nuevo.js, y la vista previa es similar a la siguiente.

Fragmento de código:

var string =
    'Lorem Ipsum is simply dummy text of the printing and typesetting industry.';
console.log('Size of sample is: ' + string.length);
var compressed = LZString.compress(string);
console.log('Size of compressed sample is: ' + compressed.length);
console.log(compressed);
string = LZString.decompress(compressed);
console.log('Sample is: ' + string);

Después de preparar el archivo new.js, importaremos lz-string.js y new.js al archivo new.html. Cuando abrimos el archivo HTML en el navegador, la salida sería similar a la siguiente.

Producción:

Use LZString para comprimir cadenas

Como se puede notar, si comparamos ambas soluciones, la implementación de LZString da un mejor resultado. Fue desarrollado y diseñado de manera dedicada para resolver problemas en casos más grandes donde puede almacenar datos de gran tamaño en el almacenamiento del servidor.

Anika Tabassum Era avatar Anika Tabassum Era avatar

Era is an observer who loves cracking the ambiguos barriers. An AI enthusiast to help others with the drive and develop a stronger community.

LinkedIn Facebook

Artículo relacionado - JavaScript String