【问题标题】:Encode and decode a string in JavaScript在 JavaScript 中对字符串进行编码和解码
【发布时间】:2019-08-18 10:25:35
【问题描述】:

假设我有一个名为str 的字符串,它等于“Hello, world!” 有没有办法选择一些 unicode 字符,如 "azertyuiopqsdfghjklmwxcvbn1234567890-" 并返回仅包含所选字符的编码字符串?
它应该返回类似“hvfebi iehfhe”的东西(嗯,编码的东西,不是人类可读的,但它是可解码的)?
谢谢

【问题讨论】:

  • 你可以使用真正的加密和base64编码结果。
  • 哦,我忘了补充,一些不像 base64 的东西,一些不流行的东西,所以如果没有功能就无法解码
  • base64 不流行?世界上有什么? not decodable without having the function any 编码方案也是如此。另外,JavaScript 有这些函数内置。您的自定义编码方案也可以这样说吗?
  • @Amy 他不想要 base64,因为它很受欢迎。他应该研究加密,而不是编码。

标签: javascript decode encode


【解决方案1】:

没有一个函数可以配置任意字符集来进行编码和解码,除非你找到一个库可以做到这一点,或者你自己实现它。

但是,您可以使用 base64 编码,它使用“A-Z”、“a-z”、“0-9”、“+”、“/”和“=”字符对字符串进行编码。 原生浏览器函数在 window: btoa() 用于编码和 atob() 用于解码。

在你的 cmets 之后编辑: 你为解决这个问题而编写的任何函数都可以在分析代码时解码,所以没有必要隐藏它。如果您不想简单地成为base64,您可以制作一个对其进行多次编码的函数。

【讨论】:

  • 我需要一些没人能解码的东西,除非他们有一组 unicode 字符 "azertyuiopqsdfghjklmwxcvbn1234567890-"
  • 你不能在前端创建一个安全的替换算法。任何人都可以调试您的代码并获取您的字符串。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多