首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jquery:判断字符串是否包含数组字符

问jquery:判断字符串是否包含数组字符
EN

Stack Overflow用户
提问于 2016-11-10 23:32:17
回答 2查看 324关注 0票数 0

我有以下代码:

代码语言:javascript
复制
var specialchars = [246,214,228,196,252,220,223]; // holds german umlauts + ß
var foo = "abcdefä41hl";

检测foo是否包含数组中字符的ascii代码的最佳实践是什么?在这种情况下,它将返回true,因为它包含"ä“(ascii代码228)。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2016-11-10 23:35:29

你可以通过以下方式检测到它:

代码语言:javascript
复制
var specialchars = [246,214,228,196,252,220,223];
var foo = "abcdefä41hl";
var isExist = !!([...foo].find(itm => specialchars.includes(itm.charCodeAt())));

console.log(isExist); // true

或者,您可以使用Array.prototype.some代替注释中建议的find,

代码语言:javascript
复制
var isExist = [...foo].some(itm => specialchars.includes(itm.charCodeAt()));
票数 1
EN

Stack Overflow用户

发布于 2016-11-10 23:35:48

很容易做到:

代码语言:javascript
复制
foo.split("").filter(c => specialchars.indexOf(c.charCodeAt()) != -1).length != 0

它将字符串拆分成一个字符数组,只保留存在于特殊字符列表中的字符,并检查是否有剩余字符。

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

https://stackoverflow.com/questions/40531307

复制
相关文章

相似问题

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