UTF-16字符代码的总和

时间:2017-11-02 04:00:43

标签: javascript utf-16

我开始道歉,如果这似乎是一个简单的问题,但对我来说却不是。刚开始学习JavaScript:)

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

我想我必须使用 charCodeAt(); ,但我不知道如何实现这个目标......

预先感谢您的回复

2 个答案:

答案 0 :(得分:0)

使用:

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

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

答案 1 :(得分:-1)

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

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