일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- Instanc
- 클래스 문법 구조
- Promise Chaining
- probs.children
- 화살표함수 기본 개념
- 문자열을 객체로 만드는법
- 조건문
- async/await
- 재귀함수 탬플릿
- string
- display
- align-iitems
- 추상화 (abstraction)
- 객체지향 프로그래밍 특징
- probs
- Promise all
- props비구조화 할당
- 재귀적으로 생각하기
- css 정리
- 캡슐화 (encapsulation)
- 상속 (inheritance)
- justfiy-content
- class
- flex-direction
- 다형성 (polymorphism)
- 참조자료형
- 얕은복사와 깊은 복사
- 첫번째 미니 프로잭트
- align-content
- Math.floor()
Archives
- Today
- Total
희락코딩
getEvenNumbers 본문
728x90
반응형
function getEvenNumbers(arr) { }
문제
▶ 수를 요소로 갖는 배열을 입력받아 짝수만을 요소로 갖는 배열을 리턴하라
▶ 짝수가 없는 경우, 빈 배열을 리턴
입출력 예시
let output = getEvenNumbers([1, 2, 3, 4]);
console.log(output); // [2 , 4]
수도코드 작성
1. 저장 할 새로운 빈 배열을 만든다.
2. 배열안에 있는 요소를 반복해서 돌린다.
3. 배열의 요소가 짝수일 경우의 조건식을 만든다.
4. 조건에 해당하면 빈 배열에다 요소를 넣는다.
5. 담은 요소의 배열을 반환한다.
코드작성
1
2
3
4
5
6
7
8
9
10
11
|
function getEvenNumbers(arr) {
let newArr = [];
for(let el in arr){
if(arr[el]%2 === 0){
newArr.push(arr[el])
}
}
return newArr;
}
|
cs |
문제풀이
이문제는 그렇게 어려운 문제는 아니였다. 다만 for..of와 for..in의 차이점을 구별하기 좋은 문제인 것 같다!
통상 for..in객체, for..of배열로 이해하는 경우가 많다. 하지만 상황에 따라 for..in에 배열을 쓰는 경우도 있다.
for..in은 배열의 인덱스 요소를 조회한다. 그래서 arr[el] 써서 비교하는게 맞는 표현이다.
그렇다면 for..of로 쓰려면 어떻게 바꾸면 좋을까 ?
1
2
3
4
5
6
7
8
9
10
11
|
function getEvenNumbers(arr) {
let newarr = [];
for(let el of arr){
if(el%2 === 0){
newarr.push(el)
}
}
return newarr;
}
|
cs |
for..of는 키의값 배열로치면 인덱스 요소의 값을 조회 하기 때문에 위와 같이 arr[el] 에서 el로 바꿔 써주면 된다.
자세한 사항은!!
https://joy-codeing-lee.tistory.com/51?category=961871
728x90
반응형
'프로그래밍 > 코드 문제 풀이' 카테고리의 다른 글
countAllCharacters // 문자열을 객체로! (0) | 2021.04.25 |
---|---|
addToBackOfNew & addToFrontOfNew (0) | 2021.04.25 |
makeLastSeenMsg (0) | 2021.04.09 |
findShortestOfThreeWords (0) | 2021.04.09 |
isPythagorean (0) | 2021.04.09 |
Comments