如何在Javascript中将字符串转换为一系列数字

How to convert a string into a series of digits in Javascript?

本文关键字:转换 一系列 数字 字符串 Javascript      更新时间:2023-09-26

在Javascript中将字符串转换为一系列数字的好方法是什么(我不是在谈论将"0.5"转换为0.5,而是将更多的"Hello"转换为47392048)?

有任何想法都很感谢。

谢谢!

您可以使用每个字母的ASCII值:

"a letter".charCodeAt(0);

好的,鉴于你的评论,这里有一个(没有广泛测试的)解决方案。

var str = "κόσμε 这是一条狗 é €";
$('#orig').after('<dd>' + str + '</dd>');
var result = "";
for (var i = 0, len = str.length, code, paddedCode; i < len; ++i) {
  code = str[i].charCodeAt(0).toString();
  paddedCode = code.length >= 8
    ? code
    : new Array(8 - code.length + 1).join(0) + code; result += paddedCode;
  result += paddedCode;
}
$('#nums').after('<dd>' + result + '</dd>');
var segments = result.match(/.{8}/g);
$.each(segments, function(k, v) {
    $('#nums-segmented').after('<dd>' + v + '</dd>');
});
revertedString = '';
for (var i = 0, len = segments.length; i < len; i=i+2) {
  revertedString += String.fromCharCode((segments[i] | 0));
}
$('#string').after('<dd>' + revertedString + '</dd>');

在JSFiddle下运行

技巧是在需要的时候将数字作为字符串使用。