summaryrefslogtreecommitdiff
path: root/node_modules/locutus/php/strings/chr.js
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/locutus/php/strings/chr.js')
-rw-r--r--node_modules/locutus/php/strings/chr.js22
1 files changed, 22 insertions, 0 deletions
diff --git a/node_modules/locutus/php/strings/chr.js b/node_modules/locutus/php/strings/chr.js
new file mode 100644
index 0000000..8a6f52d
--- /dev/null
+++ b/node_modules/locutus/php/strings/chr.js
@@ -0,0 +1,22 @@
+"use strict";
+
+module.exports = function chr(codePt) {
+ // discuss at: http://locutus.io/php/chr/
+ // original by: Kevin van Zonneveld (http://kvz.io)
+ // improved by: Brett Zamir (http://brett-zamir.me)
+ // example 1: chr(75) === 'K'
+ // example 1: chr(65536) === '\uD800\uDC00'
+ // returns 1: true
+ // returns 1: true
+
+ if (codePt > 0xFFFF) {
+ // Create a four-byte string (length 2) since this code point is high
+ // enough for the UTF-16 encoding (JavaScript internal use), to
+ // require representation with two surrogates (reserved non-characters
+ // used for building other characters; the first is "high" and the next "low")
+ codePt -= 0x10000;
+ return String.fromCharCode(0xD800 + (codePt >> 10), 0xDC00 + (codePt & 0x3FF));
+ }
+ return String.fromCharCode(codePt);
+};
+//# sourceMappingURL=chr.js.map \ No newline at end of file