본문 바로가기
알고리즘/Codewars

[Codewars] List Filtering (7 kyu) / JavaScript

by fluss 2022. 9. 26.

DESCRIPTION:

In this kata you will create a function that takes a list of non-negative integers and strings and returns a new list with the strings filtered out.

 

Example

filter_list([1,2,'a','b']) == [1,2]
filter_list([1,'a','b',0,15]) == [1,0,15]
filter_list([1,2,'aasf','1','123',123]) == [1,2,123]

 

설명:

음수가 아닌 정수와 문자열 리스트를 받아 문자열을 걸러낸 리스트를 반환하는 함수를 만들어라. 

 

예시

filter_list([1,2,'a','b']) == [1,2]
filter_list([1,'a','b',0,15]) == [1,0,15]
filter_list([1,2,'aasf','1','123',123]) == [1,2,123]

 

풀이

function filter_list(l) {
  let result = [];
  for(let i = 0; i< l.length; i++){
    if(Number.isInteger(l[i])){
      result.push(l[i]);
    }
  }
  return result
}

for문으로 list의 원소들을 하나씩 확인해서 정수인지 확인한 다음 정수라면 result에 값을 넣는 방식으로 풀었는데 filter를 써서 푸는 방법이 있었다.

다른 사람의 좋았던 풀이

function filter_list(l) {
  return l.filter(function(v) {return typeof v == 'number'})
}

 

문제 링크

https://www.codewars.com/kata/53dbd5315a3c69eed20002dd/javascript

댓글