How to get the string length in bytes in nodejs? If I have a string, like this: äáöü then str.length will return with 4. But how to get that, how many bytes form the string?
Thanks in advance
How to get the string length in bytes in nodejs? If I have a string, like this: äáöü then str.length will return with 4. But how to get that, how many bytes form the string?
Thanks in advance
Here is an example:
str = 'äáöü';
console.log(str + ": " + str.length + " characters, " +
Buffer.byteLength(str, 'utf8') + " bytes");
// äáöü: 4 characters, 8 bytes
function getBytes(string){
return Buffer.byteLength(string, 'utf8')
}
Alternatively, you can use TextEncoder
new TextEncoder().encode(str).length
Related question
Assume it's slower though
If you want to specific encoded, here is iconv example
var iconv = require('iconv-lite');
var buf =iconv.encode('äáöü', 'utf8');
console.log(buf.length);
// output: 8