gpt4 book ai didi

javascript - 是否可以使用 JavaScript/jQuery 进行 Base 36 编码?

转载 作者:行者123 更新时间:2023-12-03 21:36:48 25 4
gpt4 key购买 nike

我正在考虑在这里使用编码/解码技术(在 Ruby 中编码到基数 36/从基数 36 解码很简单)

how to implement a short url like urls in twitter?

想法是跟踪用户推荐、邀请 URL。我可以使用 Rails 进行解码,但有没有办法使用 Javascript 或 jQuery 进行编码?

最佳答案

Number 上的 toString 方法有一个可选的基数参数:

(128482).toString(36);
128482..toString(36);
128482 .toString(36);
var num = 128482; num.toString(36);

请注意,这不起作用,因为数字需要句点后的十进制数字,而不是字母:

128482.toString(36);  // Syntax error

另外,你也可以用JS解码:

parseInt("2r4y", 36);

编辑:

But if I want to remove look-alike characters (1-l or 0-O) what can I do?

最简单的方法是根据要跳过的字符数来减少基数,然后进行翻译:请注意,仅使用 1-l0-O 之一是一个问题,因为base36只编码小写(在这种情况下你有1-l,但没有0-O),你可以将其变成大写(在这种情况下,副反之亦然)。

(128482).toString(36).replace(/[m-y]/, x => String.fromCharCode(x.charCodeAt(0) + 1))

如果您想要大于 36 的基数,则必须拥有自己的基数更改函数,因为 36 是 toString 支持的最高值。在这种情况下,您可以轻松地根据需要制作自己的数字库存。

for working with long numbers?

继续吧:) 注意 n 后缀,它将数字变成 BigInt :

1000000000000000000000000000000000000000000000000000000000n.toString(36)
// => "9edwccv83mch429oxmlxupo4z1bdaiusrm29s"

关于javascript - 是否可以使用 JavaScript/jQuery 进行 Base 36 编码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9542726/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com