编码函数
Base64
js
legado.base64Encode(str) → string // 字符串 → Base64
legado.base64Decode(str) → string // Base64 → 字符串也可使用全局函数 btoa() / atob()。
示例
js
var encoded = legado.base64Encode('Hello World');
// "SGVsbG8gV29ybGQ="
var decoded = legado.base64Decode('SGVsbG8gV29ybGQ=');
// "Hello World"URL 编码
js
legado.urlEncode(str) → string // URL 编码(UTF-8)
legado.urlDecode(str) → string // URL 解码
legado.urlEncodeCharset(str, charset) → string // 指定字符集编码示例
js
// UTF-8 编码(大多数站点)
var q = legado.urlEncode('斗破苍穹');
var url = BASE + '/search?q=' + q;
// GBK 编码(老旧站点)
var q = legado.urlEncodeCharset('斗破苍穹', 'gbk');
var url = BASE + '/search.php?keyword=' + q;TIP
对于 UTF-8 站点,也可以直接使用 JavaScript 内置的 encodeURIComponent()。
HTML 实体
js
legado.htmlEncode(str) → string // 字符 → HTML 实体
legado.htmlDecode(str) → string // HTML 实体 → 字符示例
js
legado.htmlEncode('<script>alert(1)</script>');
// "<script>alert(1)</script>"
legado.htmlDecode('<p>Hello</p>');
// "<p>Hello</p>"Base64 字节切片
js
legado.base64ByteSlice(inputB64, start, end?) → string对 base64 解码后的字节数组进行切片,再重新编码为 base64。用于拆分 base64(IV || 密文) 等场景。
js
// 假设 data 是 base64(16字节IV + 密文)
var ivB64 = legado.base64ByteSlice(data, 0, 16); // 前 16 字节 → IV
var cipherB64 = legado.base64ByteSlice(data, 16); // 第 16 字节之后 → 密文