byteLength

fun byteLength(string: String, encoding: BufferEncoding = definedExternally): Double(source)
fun byteLength(string: Buffer, encoding: BufferEncoding = definedExternally): Double(source)
fun byteLength(string: ArrayBufferView<*>, encoding: BufferEncoding = definedExternally): Double(source)
fun byteLength(string: ArrayBuffer, encoding: BufferEncoding = definedExternally): Double(source)
fun byteLength(string: SharedArrayBuffer, encoding: BufferEncoding = definedExternally): Double(source)

Returns the byte length of a string when encoded using encoding. This is not the same as String.prototype.length, which does not account for the encoding that is used to convert the string into bytes.

For 'base64', 'base64url', and 'hex', this function assumes valid input. For strings that contain non-base64/hex-encoded data (e.g. whitespace), the return value might be greater than the length of a Buffer created from the string.

import { Buffer } from 'node:buffer';

const str = '\u00bd + \u00bc = \u00be';

console.log(`${str}: ${str.length} characters, ` +
`${Buffer.byteLength(str, 'utf8')} bytes`);
// Prints: ½ + ¼ = ¾: 9 characters, 12 bytes

When string is a Buffer/DataView/`TypedArray`(https://developer.mozilla.org/en-US/docs/Web/JavaScript/- * Reference/Global_Objects/TypedArray)/ArrayBuffer/`SharedArrayBuffer`(https://develop- * er.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer), the byte length as reported by .byteLengthis returned.

Since

v0.1.90

Return

The number of bytes contained within string.

Parameters

string

A value to calculate the length of.

encoding='utf8' If string is a string, this is its encoding.