Maison > interface Web > js tutoriel > Comment convertir efficacement des ArrayBuffers en chaînes Base64 en JavaScript ?

Comment convertir efficacement des ArrayBuffers en chaînes Base64 en JavaScript ?

Linda Hamilton
Libérer: 2024-12-02 10:03:12
original
187 Les gens l'ont consulté

How to Efficiently Convert ArrayBuffers to Base64 Strings in JavaScript?

Conversion d'ArrayBuffers en chaînes Base64 en JavaScript natif

La tâche à accomplir consiste à convertir efficacement un ArrayBuffer en une chaîne codée en base64, un exigence pour les requêtes POST en plusieurs parties.

Natif Implémentation

Le code ci-dessous fournit une solution native :

function _arrayBufferToBase64(buffer) {
    var binary = '';
    var bytes = new Uint8Array(buffer);
    var len = bytes.byteLength;
    for (var i = 0; i < len; i++) {
        binary += String.fromCharCode(bytes[i]);
    }
    return window.btoa(binary);
}
Copier après la connexion

Cette implémentation convertit l'ArrayBuffer en chaîne binaire avant d'appliquer l'encodage base64.

Alternative non native

Bien que l'implémentation native soit fiable, il existe des approches non natives qui offrent des performances améliorées. Une telle implémentation se trouve sur :

https://gist.github.com/958841

Les tests de performances indiquent que les méthodes non natives peuvent être plus rapides. Voir :

http://jsperf.com/encoding-xhr-image-data/6

Benchmarks mis à jour :

https://jsben.ch/wnaZC

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal