Maison >interface Web >js tutoriel >Comment convertir efficacement un ArrayBuffer en chaîne Base64 pour les publications en plusieurs parties ?

Comment convertir efficacement un ArrayBuffer en chaîne Base64 pour les publications en plusieurs parties ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-24 14:57:14551parcourir

How to Efficiently Convert an ArrayBuffer to a Base64 String for Multipart Posts?

Conversion d'ArrayBuffer en chaîne codée en base64 pour les publications en plusieurs parties

Pour convertir efficacement un ArrayBuffer en une chaîne base64 adaptée aux publications en plusieurs parties, les développeurs peuvent exploiter les techniques suivantes :

Natif Implémentation

La première approche consiste à utiliser des fonctionnalités natives :

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 );
}

Implémentation non native

Si l'implémentation native n'est pas prise en charge ou nécessite une optimisation de la vitesse, pensez à utiliser des méthodes non natives :

// Refer to external library or gist for non-native implementation

Performance Comparaison

Les implémentations non natives affichent souvent des performances plus élevées, comme le démontrent les benchmarks :

  • [JS Perf](https://jsperf.com/encoding-xhr-image -data/6)
  • [JS Bench](https://jsben.ch/wnaZC)

Cependant, les développeurs doivent évaluer les performances et la compatibilité du navigateur avant de choisir une approche particulière.

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!

Déclaration:
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