在Javascript中将字符串转换为一系列数字的好方法是什么(我不是在谈论转换"0.5"
为0.5
,而是更多"Hello"
地转换为47392048
)?
任何想法表示赞赏。
谢谢!
在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上运行它
诀窍是填充数字并在需要时将它们作为字符串使用。