`
kanpiaoxue
  • 浏览: 1781544 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

javascript的base64操作

 
阅读更多

有的时候我们也会遇到在js里面进行base64的操作。

function b64EncodeUnicode(str) {
    // first we use encodeURIComponent to get percent-encoded UTF-8,
    // then we convert the percent encodings into raw bytes which
    // can be fed into btoa.
    return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g,
        function toSolidBytes(match, p1) {
            return String.fromCharCode('0x' + p1);
    }));
}


function b64DecodeUnicode(str) {
    // Going backwards: from bytestream, to percent-encoding, to original string.
    return decodeURIComponent(atob(str).split('').map(function(c) {
        return '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2);
    }).join(''));
}

 测试

var hello = '/usr/local/test/hello.txt';
console.log('original:%s',hello);
var b64EncodeUnicodeStr = b64EncodeUnicode(hello);
console.log('b64EncodeUnicode:%s',b64EncodeUnicodeStr);
console.log('b64DecodeUnicode:%s',b64DecodeUnicode(b64EncodeUnicodeStr));

// output:
// original:/usr/local/test/hello.txt
// untitled.html:50 b64EncodeUnicode:L3Vzci9sb2NhbC90ZXN0L2hlbGxvLnR4dA==
// untitled.html:51 b64DecodeUnicode:/usr/local/test/hello.txt

 

分享到:
评论

相关推荐

    javascript处理中文base64编码

    如果是在Node.js环境下,由于`btoa()` 和 `atob()` 不可用,你可以使用`Buffer`对象来进行Base64操作: ```javascript const { Buffer } = require('buffer'); // 编码 const base64String = Buffer.from('中文...

    Base64_javascript_base64_

    二、JavaScript中的Base64操作 在JavaScript中,我们可以利用内置的`btoa()`和`atob()`函数来进行Base64的编码和解码。但是,这两个函数在旧版本的IE浏览器中可能不支持,因此在实际开发中,我们需要考虑兼容性问题...

    javascript base64

    在这种情况下,可以使用第三方库,如`base-64`来实现跨平台的Base64操作: ```javascript // 安装 base-64 库 npm install base-64 // 引入库 const base64 = require('base-64'); let data = "Hello, World!"; ...

    js-base64 20150121_javascriptbase64_carry9i1_jsbase64_64cacom_

    在给定的`js-base64 20150121_javascriptbase64_carry9i1_jsbase64_64cacom_`这个压缩包中,我们预计会找到一个JavaScript实现的Base64库,可能被用于在浏览器环境中进行Base64编码和解码。 Base64算法的核心原理是...

    JQ JS javascript 普通图片上传 图片格式转换 图片base64转换 jpg转base64 png转base64

    本文将深入探讨如何使用jQuery(JQ)、JavaScript(JS)以及base64编码技术来实现普通图片的上传、格式转换以及base64编码转换。我们将讨论jpg和png图片如何转化为base64字符串,以便在网络上传输或存储。 首先,让...

    javascript base64加密

    9. **错误处理**:在进行Base64操作时,要处理可能出现的错误,如非Base64编码的字符串尝试解码,或者编码过程中出现的非可打印字符。 10. **Unicode支持**:对于包含Unicode字符的字符串,使用`btoa()`和`atob()`...

    图片文件与Base64编码字节数组字符串互转

    在IT领域,尤其是在Web开发中,图片文件与Base64编码字节数组字符串的转换是一种常见的操作。这种转换在不直接使用图片文件路径或URL,而是将图片数据嵌入到HTML、CSS或JavaScript中时非常有用。下面我们将详细探讨...

    base64,java与JavaScript实现

    ### 关于Base64编码及Java与JavaScript的实现 #### Base64简介 Base64是一种将二进制数据转换为ASCII字符串表示形式的方法。它主要用于处理非文本数据的存储和传输,例如图像、视频等多媒体文件。由于互联网传输...

    Base64的js插件

    在JavaScript中,处理Base64的插件可以帮助开发者方便地进行Base64编码和解码操作。在你提供的文件中,我们可能找到了一个用于JavaScript的Base64编码库,它可能包含了一套完整的API,用于对数据进行Base64的加解密...

    JavaScript Base64

    JavaScript Base64是一种在Web开发中广泛使用的编码技术,它允许我们将任意二进制数据转换为可打印的ASCII字符字符串,以便在网络上传输或者在HTML和JavaScript中存储。Base64编码是基于64个可打印字符来表示二进制...

    Base64 编码和解码

    `js-base64`是一个轻量级的JavaScript库,提供了全面的Base64操作功能,包括URL安全的编码和解码,以及在不同环境下的兼容性。 ```javascript // 安装库 npm install base64-js // 引入库 const Base64 = require...

    js-base64-3.7.5.tgz

    3. `Uint8Array` 支持:允许直接对 `Uint8Array` 类型的数据进行Base64操作,这对于处理二进制数据非常有用。 4. URL安全的Base64编码:提供URL安全的Base64编码选项,即将 "+" 替换为 "-" 和 "/" 替换为 "_",这样...

    Javascript 实现Base64 + GZIP + AES 加解密

    本篇文章将深入探讨如何利用JavaScript实现Base64、GZIP和AES的加解密技术,结合“crypto-js”和“pako”这两个库来实现这一目标。 首先,让我们了解这三项技术的基础知识: 1. **Base64编码**:Base64是一种用于...

    java和js相互base64编码解码

    在IT行业中,Base64是一种常见的数据编码方式,它将任意二进制数据转换为可打印的ASCII字符,常用于在网络上传输包含非ASCII字符的...在实际项目中,了解并掌握这两种语言的Base64操作对于数据传输和存储是至关重要的。

    PDF和Base64格式互相转换

    反向操作是将Base64编码的字符串解码回原始的二进制数据,然后保存为PDF文件。这个过程包括两个步骤:首先,使用Base64解码算法将字符串转换回二进制数据;其次,将解码后的二进制数据写入新的PDF文件中。 3. **...

    JavaScript将base64图片转换成formData并通过AJAX提交的实现方法

    JavaScript将base64图片转换成formData并通过AJAX提交是一项技术需求,通常出现在需要将前端处理得到的图片信息上传到服务器的场景中。base64编码是一种用64个ASCII字符表示任意二进制数据的方法,它常用于在网页中...

    微信小程序base64加解密

    在微信小程序中,我们可以使用JavaScript的内置函数进行Base64的加解密操作。JavaScript提供了`btoa()`和`atob()`两个函数,分别用于Base64编码和解码。但是需要注意的是,这两个函数并不适用于所有环境,特别是对于...

    小程序base64解析

    7. **解码库**:在实际开发中,你可能需要借助一些第三方库,如`npm`上的`base-64`库,来进行Base64的编码和解码操作。但在小程序环境中,通常使用内置的API即可满足需求。 8. **调试与测试**:在开发过程中,可以...

    js的base64和base32加密函数

    在JavaScript编程中,Base64和Base32是两种常见的数据编码方式,它们主要用于在网络上传输二进制数据。在本文中,我们将深入探讨这两种编码方法以及如何在JavaScript中实现它们,同时解决在Ajax请求中传递包含特殊...

    H5移动端Base64压缩图片

    如果你的压缩包包含“压缩相片”,这可能意味着你已经有一个包含Base64编码图片的项目,你可以使用HBuilder打开并进一步操作。 总结起来,H5移动端Base64压缩图片的技术关键在于使用canvas进行图像处理,然后通过...

Global site tag (gtag.js) - Google Analytics