JavaScript substring Messes Emoji

Array.from(str) splits your string into individual unicode characters without breaking them between bytes.
TM