Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

469
Vistas
Convierta una cadena a base64 en JavaScript. btoa y atob están en desuso

Últimamente he estado trabajando en algunos proyectos en VS Code y de repente comencé a recibir notificaciones en mi código de que btoa y atob ahora están obsoletos. No puedo encontrar ningún recurso para esto además de VS Code. Si esto es cierto, ¿qué alternativa hay?

about 4 years ago · Juan Pablo Isaza
3 Respuestas
Responde la pregunta

0

Las funciones Node btoa() y atob() son las únicas que han quedado obsoletas. Sin embargo, si está trabajando en el código DOM (front-end) y ve este aviso obsoleto, puede usar el objeto de ventana para sortearlo.

 window.atob()

Para más información

about 4 years ago · Juan Pablo Isaza Denunciar

0

Todavía dentro de VS Code, eché un vistazo a los comentarios de la función obsoleta btoa(str). Sugiere lo siguiente como reemplazo:

 const base64Str = Buffer.from(str, 'utf8').toString('base64');
about 4 years ago · Juan Pablo Isaza Denunciar

0

btoa(): acepta una cadena donde cada carácter representa un byte de 8 bits. Si pasa una cadena que contiene caracteres que no se pueden representar en 8 bits, probablemente se rompa. Probablemente es por eso que btoa está en desuso.

atob(): devuelve una cadena donde cada carácter representa un byte de 8 bits.

Si está utilizando nodejs, simplemente reemplace atob y btoa con Buffer. Aquí está la documentación oficial Buffers en nodejs :

 //With NodeJS export const encodeBase64 = (data) => { return Buffer.from(data).toString('base64'); } export const decodeBase64 = (data) => { return Buffer.from(data, 'base64').toString('ascii'); }

De lo contrario, puede instalar el búfer con "yarn add buffer" o "npm i buffer" para ejecutar en el navegador. La API del módulo de búfer es idéntica a la API de búfer del nodo.

Aquí hay una muestra de React que usa el módulo javascript para el navegador, pero puede ejecutarse en cualquier aplicación frontend javascript moderna que use paquete web o paquete o incluso javascript vainilla con script src:

 //this will run on browser import React from "react"; import { Buffer } from 'buffer'; export default function App() { const encodeBase64 = (data) => { return Buffer.from(data).toString('base64'); } const decodeBase64 = (data) => { return Buffer.from(data, 'base64').toString('ascii'); } return <div> {'encoded test to base64 = ' + encodeBase64('test')}<br /> {'decoded dGVzdA== to ascII = ' + decodeBase64('dGVzdA==')} </div>; }

El gancho de reacción anterior dará como resultado:

 encoded test to base64 = dGVzdA== decoded dGVzdA== to ascII = test
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda