如何提取字符串中出现的唯一字母(包括所有空格)?
我的代码的问题是它只返回第一次出现的空格:
function unique_char(str1) {
var str = str1;
var uniql = "";
for (var x = 0; x < str.length; x++) {
if (uniql.indexOf(str.charAt(x)) == -1) {
uniql += str[x];
}
}
return uniql;
}
console.log(unique_char("the fox news newspaper"));
这会打印到控制台:
the foxnwspar
但我想要的输出是:
the fox nws par
任何帮助将不胜感激。
谢谢
最佳答案
添加逻辑OR
来检查字符是否为空格
if (uniql.indexOf(char) == -1 || char == ' ')
请参阅下面的工作片段:
function unique_char(str) {
var uniql = "";
for (var x = 0; x < str.length; x++) {
var char = str.charAt(x);
if (uniql.indexOf(char) == -1 || char == ' ') {
uniql += str[x];
}
}
return uniql;
}
document.write(unique_char("the fox news newspaper"));
关于javascript - 从字符串中提取唯一字符并保留字符串之间的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36670340/