~/talk

Javascript ♥ Unicode

Talkat Frontend United 2016 · 2016-05-27..05-28· [javascript, web-platform]
slides:none on file

JavaScript treats many Unicode code points as two UTF‑16 surrogates, so string.length and character-at semantics are misleading (a pile of poo counts as length 2 and caused Twitter’s counter bug, effectively limiting tweets to 70 such emoji). ES6/ES7 add fixes: Array.from / spread + string iterator, String.fromCodePoint and codePointAt, string.normalize, new Unicode escapes and the u flag for regex. Tools: regenerate for building Unicode regexes, a rigex transpiler, s-reverse and punycode ports — they work but add complexity.

AI-written summary · about

  1. 0:00Welcome
  2. 0:41Speaker and Punic code
  3. 2:48JS Unicode quirks
  4. 3:52Unicode basics
  5. 6:42Unicode planes and symbols
  6. 8:04Encodings and Unicode
  7. 10:32JS string escapes
  8. 12:20Astral symbols in JS
  9. 14:24Why JavaScript string length is misleading
  10. 16:52Unicode bugs in real world
  11. 18:14Counting code points
  12. 20:19Combining marks and strings
  13. 21:21Normalizing strings
  14. 22:45Reversing strings
  15. 24:29String methods limits
  16. 27:21Iterating Unicode symbols
  17. 29:05Regular expressions and Unicode in JavaScript
  18. 33:58ES6 regex Unicode flag
  19. 35:42Unicode ranges in regex
  20. 36:24Transpiling Unicode regex
  21. 37:48Future Unicode regex
  22. 39:56Fix Unicode issues
  23. 40:59Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.