如何使用JavaScript将字符转换为ASCII码?

例如:

从“\n”中得到10。


当前回答

str.charCodeAt(index)

使用charCodeAt () 下面的示例返回A的Unicode值65。

'ABC'.charCodeAt(0) //返回65

其他回答

虽然其他答案都是正确的,但我更喜欢这样:

function ascii (a) { return a.charCodeAt(0); }

然后,要使用它,简单地:

var lineBreak = ascii("\n");

我正在使用这个小快捷系统:

$(window).keypress(function(event) {
  if (event.ctrlKey && event.which == ascii("s")) {
    savecontent();
    }
  // ...
  });

你甚至可以在map()或其他方法中使用它:

var ints = 'ergtrer'.split('').map(ascii);

JavaScript将字符串存储为UTF-16(双字节),所以如果你想忽略第二个字节,只需在0000000011111111(即255)上按位&操作符将其剥离:

'a'.charCodeAt(0) & 255 === 97; // because 'a' = 97 0 
'b'.charCodeAt(0) & 255 === 98; // because 'b' = 98 0 
'✓'.charCodeAt(0) & 255 === 19; // because '✓' = 19 39

将字符串转换为UTF-8的数组(流):

const str_to_arr_of_UTF8 = new TextEncoder().encode("Adfgdfs");
// [65, 100, 102, 103, 100, 102, 115]

注意:ASCII是UTF-8的一个子集,所以这是一个通用的解决方案

"\n".charCodeAt(0);

截至2023年

从字符到ASCII码

使用方法charCodeAt

控制台日志(“\ n "。charCodeAt ()

从ASCII码到字符

使用fromCharCode方法

console.log(String.fromCharCode(10))