29 lines
844 B
Markdown
29 lines
844 B
Markdown
|
# utf8-byte-length [![build status](https://secure.travis-ci.org/parshap/utf8-byte-length.svg?branch=master)](http://travis-ci.org/parshap/utf8-byte-length)
|
||
|
|
||
|
Get the utf8 byte length of a string, taking into account multi-byte
|
||
|
characters and surrogate pairs.
|
||
|
|
||
|
By default, this module defers to `Buffer.byteLength`. A browser
|
||
|
implementation is also provided that doesn't use `Buffer.byteLength`
|
||
|
minimize build size.
|
||
|
|
||
|
## Example
|
||
|
|
||
|
```js
|
||
|
var getLength = require("utf8-byte-length")
|
||
|
console.log(truncate("a☃", 2)) // a = 1 byte, ☃ = 3 bytes
|
||
|
// -> 4
|
||
|
```
|
||
|
|
||
|
## API
|
||
|
|
||
|
### `var getLength = require("utf8-byte-length")`
|
||
|
|
||
|
*When using browserify or webpack*, this automatically resolves to an
|
||
|
implementation that does not use `Buffer.byteLength`.
|
||
|
|
||
|
### `getLength(string)`
|
||
|
|
||
|
Returns the byte length of `string`. Throws an error if `string` is not
|
||
|
a string.
|