当前位置:首页 » 《随便一记》 » 正文

水文-ts中对中文进行base64编码

17 人参与  2022年11月14日 11:18  分类 : 《随便一记》  评论

点击全文阅读


文章目录

前言ts环境准备ts中对utf8字符串进行base64编码

前言

完整代码见仓库。


ts环境准备

参考:如何建立一个新的 TypeScript 项目

# npm install -g ts-nodenpm install -g typescripttsc.cmd --init

我之前安装过nodejs环境:fetch的简单使用。所以不再需要安装nodejs。

我们使用npm安装typescript。关于npm的使用,可以参考npm 模块安装机制简介。至于typescript是一种用于应用程序级 JavaScript 的语言,可以将ts编写的程序编译成js。安装typescript的时候,会包含tsc。

注:上面参考链接中,使用了npx,它可以调用项目内部模块,避免全局安装,可以参考:npx 使用教程。

接着,我们使用tsc.cmd --init,创建一个tsconfig.json。tsconfig.json文件中指定了用来编译这个项目的根文件和编译选项。


ts中对utf8字符串进行base64编码

参考:Using Javascript’s atob to decode base64 doesn’t properly decode utf-8 strings

使用js-base64对utf8字符串进行base64编码。

npm install --save js-base64# 安装package.json中的依赖# npm install# npm uninstall typescript

我用demo测了下,应该能用。

import { Base64 } from 'js-base64'console.debug("hello world")const str = "中文"// Base64console.debug(Base64.encode(str))console.debug(Base64.decode(Base64.encode(str)))

先编译,tsc.cmd命令按照tscconfig.json中的配置进行编译,生成js。node.exe .\dist\index.js,使用node命令运行js程序。输出如下。

hello world5Lit5paH中文

另外,ts中不能使用下面的方式进行编码转换。会编译报错ReferenceError: window is not defined。原因是nodejs中不能使用window对象,可参考在node.js里面可以使用window对象的方法吗

// window.btoaconsole.debug(window.btoa(str))console.debug(window.atob(window.btoa(str)))``

点击全文阅读


本文链接:http://m.zhangshiyu.com/post/48309.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 谢尽长安花+后续+结局沈照霜宁砚完本_谢尽长安花+后续+结局(沈照霜宁砚)
  • 不见青山存完结(霍青秦兮霍宴)_不见青山存完结霍青秦兮霍宴
  • 他的干妹妹怀孕后,我闪婚了文集(林诺陆深)全书免费_(林诺陆深)他的干妹妹怀孕后,我闪婚了文集后续(林诺陆深)
  • 江先生,你要听话列表列表_江先生,你要听话列表(许清欢江砚舟)
  • 一抹斜阳相思泪后续+必读夏知微陆远川完本_一抹斜阳相思泪后续+必读(夏知微陆远川)
  • 「不当假少爷后,我娶了首富当老婆」免费试读_萧寒沈凌薇章节多结局预体验‌
  • 全书浏览我死后,数万网友对我进行审判火爆(董天华尹瑶)_我死后,数万网友对我进行审判火爆(董天华尹瑶)全书结局
  • 纨绔恶少抽盲盒选妻子,我换嫁绝嗣总裁后他发疯求原谅+免费+后续列表_纨绔恶少抽盲盒选妻子,我换嫁绝嗣总裁后他发疯求原谅+免费+后续(阮玉绵)
  • 完结文晚云为落日溺亡++后续列表_完结文晚云为落日溺亡++后续(裴念舒)
  • [修仙:我在云疆养仙蚕]章节多结局预体验‌_「林珂」小说无删减版在线阅读
  • 全书浏览我死后,数万网友对我进行审判++番外(董天华尹瑶)_我死后,数万网友对我进行审判++番外(董天华尹瑶)全书结局
  • 被兄弟俩接连当工具人后,我杀疯了后续+(贺云舟)全书免费_(贺云舟)被兄弟俩接连当工具人后,我杀疯了后续+后续(贺云舟)

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1