我想在Javascript中使用以下内容
如果str.charAt(index)(在集合中){“。”,“,”,“#”,“$”,“;”,“:”}
是的,我知道这一定很简单,但我似乎无法正确理解语法。我现在拥有的是
theChar = str.charAt(i);
if ((theChar === '.') || (theChar === ',') || (theChar === ... )) {
// do stuff
}
这很有效,但必须有更好的方法。
编辑:我这样做了,但不确定它是否合适:
var punc = {
".":true,
",":true,
";":true,
":":true
};
if (punc[str.charAt[index]) { ...
答案 0 :(得分:5)
使用这些字符定义一个数组,然后只需在数组中搜索。一种方法是:
var charsToSearch = [".", ",", "#", "$", ";", ":"];
var theChar = str.charAt(i); /* Wherever str and i comes from */
if (charsToSearch.indexOf(theChar) != -1) {
/* Code here, the char has been found. */
}
答案 1 :(得分:2)
您可以使用正则表达式执行此操作:
var theChar = str.charAt(i);
if (/[.,#$;:]/.test(theChar)) {
// ...
}