N개의 문자열이 입력되면 중복된 문자열은 제거하고 출력하는 프로그램을 작성하세요.
출력하는 문자열은 원래의 입력순서를 유지합니다
5
good
time
good
time
student
good
time
student
<html>
<head>
<meta charset="UTF-8" />
<title>출력결과</title>
</head>
<body>
<script>
function solution(str) {
//배열을 선형탐색하는데, 문자열만 담을 수 있음
// 중복되는걸 제거해야되니까, 배열의 인덱스의 문자열을 비교
// 중복되지 않은 것들만 빈배열에 담아보자
let answer = []
for (let i of str) {
if (!answer.includes(i) && typeof i === "string") {
answer.push(i)
}
}
return answer
}
let str = [5, "good", "time", "good", "time", "student"]
console.log(solution(str))
</script>
</body>
</html>
<html>
<head>
<meta charset="UTF-8">
<title>출력결과</title>
</head>
<body>
<script>
function solution(s){
let answer;
answer=s.filter(function(v, i){
return s.indexOf(v)===i;
});
return answer;
}
let str=["good", "time", "good", "time", "student"];
console.log(solution(str));
</script>
</body>
</html>
//대충이런느낌쓰
//console.log(s.indexOf("time")); => 2를 반환. 즉, time이 2개있다는 뜻.
//filter의 첫번째 파라미터는 callback,
// callback의 첫번째 파라미터는 값, 두번째 파라미터는 인덱스
str.filter((v,i) => {
return str.indexOf(v) === i
});