JavaScript 数组删除重复的单词或字符(如果只输入字符。不要从 1 个单词中删除所有重复项
Posted
技术标签:
【中文标题】JavaScript 数组删除重复的单词或字符(如果只输入字符。不要从 1 个单词中删除所有重复项【英文标题】:JavaScript Arrays delete duplicate words or characters(if only characters are entered. Not to delete from 1 word all duplicates 【发布时间】:2018-11-16 03:06:37 【问题描述】:输入:Samsung,再输入:Samsung,再输入:Tomas,再输入:sass,再输入:sass,再输入:b,再输入:b,再输入:bb,再输入:bb.... ....
并显示以下内容: 使用 removeDuplicateUsingSet:Samsung、Tomas、sass、b、bb 无功能:Samsung,Samsung,Tomas,sass,sass,b,b,bb,bb 当你输入 stop 时循环停止.....
function removeDuplicateUsingSet(arr)
let unique_array = Array.from(new Set(arr))
return unique_array
var inputs =[];
var alreadyEntered = false;
while (!alreadyEntered)
var input = prompt("Enter items until you enter it twice");
for (var i=0;i<inputs.length;i++)
if (inputs[i] == input)
alert("Already entered!");
alreadyEntered = true;
break;
inputs.push(input);
alert("With removeDuplicateUsingSet function : " + "\n" +
removeDuplicateUsingSet(inputs) + "\n" + "Without: " + "\n" + inputs);
现在这段代码有中断循环,我不知道如何修复它.... 接下来尝试做这件事:
function removeDuplicateUsingSet(arr)
let unique_array = Array.from(new Set(arr))
return unique_array
var array = [];
var stored = [];
while(array !== 'stop')
stored.push(prompt('what are your fav books ? '));
array = prompt('If you would like to continue enter any key otherwise enter or type stop');
// document.write(stored + " , ");
console.log(removeDuplicateUsingSet(array) + "\n___________");
alert("With removeDuplicateUsingSet function : " + "\n" +
removeDuplicateUsingSet(array) + "\n" + "Without: " + "\n" + stored);
但也不是我想要的...... 它不断删除所有重复的字符(例如“三星”显示它SAMUNG,如果输入了2个相同的元素(项目),我想删除它 请帮我。 提前致谢。
【问题讨论】:
【参考方案1】:这是你想要的输出吗?
function removeDuplicateUsingSet(arr)
let unique_array = Array.from(new Set(arr))
return unique_array
var inputs = [];
while (true)
var input = prompt("Enter items until you enter it twice");
if (input == 'stop') break;
inputs.push(input);
alert("With removeDuplicateUsingSet function : " + "\n" + removeDuplicateUsingSet(inputs) +
"\n" + "Without: " + "\n" + inputs);
【讨论】:
是的 :) 我会比较一下,看看我做错了什么:D 非常感谢 您仍然必须使用 while 进行用户输入。您做错的是:作为用户输入,您尝试立即比较数组。您已经拥有删除重复项的功能,因此您只需将输入推送到数组中即可。 是的我现在知道了以上是关于JavaScript 数组删除重复的单词或字符(如果只输入字符。不要从 1 个单词中删除所有重复项的主要内容,如果未能解决你的问题,请参考以下文章