首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >当字符串包含表情符号时,删除最后一个字符字符串

当字符串包含表情符号时,删除最后一个字符字符串
EN

Stack Overflow用户
提问于 2018-12-19 17:16:45
回答 1查看 564关注 0票数 2

我正在使用React Native (聊天),在这个应用程序中我有一个表情符号选择器,但当用户按下虚拟退格键表情符号时,只删除他们的最后一个unicode字节。

如何检测最后的'chat‘(一组unicodes)是否是独立的emoji unicode?

拆分它的代码:

代码语言:javascript
复制
inputValue.substring(0, inputValue.length - 1)

我还尝试使用Array.from(),然后使用slice(0,-1),当我在控制台记录它时,所有情况的正确解决方案都会出现。但!当我将相同的变量设置为TextInput时,出现: 321331231221。

下面是一些例子:

代码语言:javascript
复制
"Hello".length
7

"Hello".slice(0,-1)
'Hello�'

Array.from("Hello")
[ 'H', 'e', 'l', 'l', 'o', '' ]

Array.from("Hello").slice(0,-1)
[ 'H', 'e', 'l', 'l', 'o' ]

Array.from("Hello").slice(0,-1).join('')
'Hello'

但是如果我在React Native TextInput组件中设置最后一个解决方案,我会看到类似这样的结果: 312412412411 (可能都是十六进制的)。如果该值没有表情符号,我也会看到相同的结果。

当我用表情符号选择器设置表情符号时,像${inputValue}${newEmoji}这样的东西都能正常工作。

我不知道该怎么想:/

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53847969

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档