javascript - 字符串到数字然后返回到 JavaScript 中的字符串加密/解密

标签 javascript string encryption

我有一个形式为

的字符串
[{"name":John, "title":'sir'\"SubTitle":'\gh}]

它包含上面提到的所有字符和一些更像 . 等。是否有任何有效的算法/函数可以将此字符串转换为包含数字的数字字符串,如 '34234354536564756756765745463543243' 并且它还可以将此数字字符串解码回原始字符串?

最佳答案

以下解决方案应该可以正确处理所有 ASCII 字符:

function encode(str) {
    return str.replace(/./g, function(c) {
        return ('00' + c.charCodeAt(0)).slice(-3);
    });
}

function decode(str) {
    return str.replace(/.{3}/g, function(c) {
        return String.fromCharCode(c);
    });
}

测试:

var str = encode(JSON.stringify({ name: 'John', title: 'sir' }));
// "123034110097109101034058034074111104110034044034116105116108101034058034115105114034125"

console.log( decode(str) );
// "{"name":"John","title":"sir"}"

关于javascript - 字符串到数字然后返回到 JavaScript 中的字符串加密/解密,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22405392/

相关文章:

ruby - 模仿 Ruby 中的 AES_ENCRYPT 和 AES_DECRYPT 函数

android - RNCryptor/JNCryptor - 在 ios 中解密在 android 中加密的字符串

javascript - 如何将 "onClick"事件链接到 JavaScript 文件?

javascript - 显示提醒消息以分享您的位置谷歌地图

javascript - iframe动态高宽根据内部内容变化

java - 将 int 转换为 string 并返回

java - 使用java从包含完整地址的给定字符串中选择城市和国家

Swift - 正则表达式与组件/连接 : which is more efficient for String operations

java - 如何解压缩使用 CipherInputStream 和 ZipInputStream 压缩和加密的文件

javascript - PHP持久登录不用担心窃取cookie