Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Emoji Algebra

Radoslav Stankov
August 01, 2018
270

Emoji Algebra

Radoslav Stankov

August 01, 2018
Tweet

Transcript

  1. Emoji Algebra Radoslav Stankov 02/08/2018

  2. None
  3. Radoslav Stankov @rstankov http://rstankov.com http://github.com/rstankov

  4. None
  5. None
  6. Emoji are ideograms and smileys used in electronic messages and

    web pages. They are much like emoticons, but emoji are actual pictures instead of typographics. 
 Originally meaning pictograph, the word emoji comes from Japanese e (ֆ, "picture") + moji (จࣈ, "character"). The resemblance to the English words emotion and emoticon is purely coincidental.
  7. Emoji are ideograms and smileys used in electronic messages and

    web pages. They are much like emoticons, but emoji are actual pictures instead of typographics. 
 Originally meaning pictograph, the word emoji comes from Japanese e (ֆ, "picture") + moji (จࣈ, "character"). The resemblance to the English words emotion and emoticon is purely coincidental.
  8. Emoji are ideograms and smileys used in electronic messages and

    web pages. They are much like emoticons, but emoji are actual pictures instead of typographics. 
 Originally meaning pictograph, the word emoji comes from Japanese e (ֆ, "picture") + moji (จࣈ, "character"). The resemblance to the English words emotion and emoticon is purely coincidental. !
  9. "

  10. ? ? ? ?

  11. ? ? ?

  12. ? ?

  13. ?

  14. None
  15. None
  16. # Free icon set

  17. None
  18. "$".length === ?

  19. "$".length === 1

  20. "$".length === 1 % ⛔ Wrong!

  21. "$".length === 2

  22. "$".length === 2 ' ✅ Correct!

  23. None
  24. ")".charCodeAt(0) === 55357

  25. ")".charCodeAt(0) === 55357 % ⛔ Wrong!

  26. ")".codePointAt(0) === 128568

  27. ")".codePointAt(0) === 128568 ' ✅ Correct!

  28. "BG"

  29. "BG".replace(/./g, c => String.fromCodePoint(c.charCodeAt(0) + 127397))

  30. "BG".replace(/./g, c => String.fromCodePoint(c.charCodeAt(0) + 127397)) === *

  31. None
  32. "+" + "\u200D" + "❤" + "\u200D" + "-"

  33. "+" + "\u200D" + "❤" + "\u200D" + "-"

  34. "+" + "\u200D" + "❤" + "\u200D" + "-"

  35. "+" + "\u200D" + "❤" + "\u200D" + "-" ===

    "."
  36. "+" + "\u200D" + "❤" + "\u200D" + "-" ===

    "." ZWJ Zero Width Joiner
  37. None
  38. "-"+"\u200D" + "+"+ "\u200D" +"/"+ "\u200D" + "0" === "1"

  39. [..."1"] === ["-", "+", "/", "0"]

  40. "2".length === 1 "❤".length === 2 "3".length === 11

  41. function textWithEmojiCount(string){ const split = string.split("\u{200D}"); const count = split.reduce((c,

    s) => { return c + [...s.split(/[\ufe00-\ufe0f]/).join("")].length; }, 0); return Math.round(count / split.length); }
  42. textWithEmojiCount("2") === 1 textWithEmojiCount("❤") === 1 textWithEmojiCount("3") === 1

  43. None
  44. "4"
 "4" + "5" === "6" "4" + "7" ===

    "8"
 "4" + "9" === ":" "4" + ";" === "<" "4" + "=" === ">"
  45. "+"

  46. "+" + "\u200D" + "?"

  47. "+" + "\u200D" + "?" === "@"

  48. "+" + ";" + "\u200D" + "?" === "A"

  49. None
  50. B

  51. Thanks C