UTF-16字符编码之和

Sum of UTF-16 character codes

如果这看起来是一个简单的问题但对我来说不是,我首先要道歉。刚开始学习JavaScript :)

所以我的问题是如何 return UTF-16 字符代码值的总和,例如如果 'A'=65, 'AB'[A+B] = [65+66] = 131, 'ABC' - [A+B+C] = [65+66+67] 将UTF-16 中的 return 198 或 'Hello World' = [H+e+l+l+o+W+o+r+l+d] 将导致添加所有值等等。 .. 我必须创建一个函数来 return UTF-16 代码值的总和。

我想我必须使用 charCodeAt(); 但我不知道如何实现...

提前感谢您的回复

您可以使用 TextEncoder()Array.prototype.reduce()。请注意,结果将是 198,而不是 193

let str = "ABC";
let res = [...new TextEncoder().encode(str)].reduce((a, b) => a + b);
console.log(res);

使用:

<script>
    var letras = "ABC";
    var soma = 0;

    letras.split('').forEach(function (letra) {
        soma+=letra.charCodeAt(0);
    });
    console.log(soma);
</script>
//return 198