Skip to content

Commit 0001d6b

Browse files
authored
Merge pull request #162 from lerrybe/master
JS Array Challenge
2 parents d38f36c + f69c079 commit 0001d6b

File tree

27 files changed

+262
-0
lines changed

27 files changed

+262
-0
lines changed

Challenge/lerrybe/filterAge/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
## 설명
2+
3+
배열 원소의 age가 30이상 50미만인 사람만 있는 객체의 배열을 만드세요

Challenge/lerrybe/filterAge/solve.js

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
// write your codes
2+
function solution(inputArray) {
3+
return inputArray.filter(elem => 30 <= elem.age && elem.age < 50);
4+
}
5+
6+
exports.solution = solution;
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
const { solution } = require('./solve');
2+
3+
const test1 = {
4+
input: [
5+
{
6+
name: '영미',
7+
age: 25,
8+
},
9+
{
10+
name: '일미',
11+
age: 35,
12+
},
13+
{
14+
name: '이미',
15+
age: 45,
16+
},
17+
{
18+
name: '삼미',
19+
age: 55,
20+
},
21+
],
22+
answer: [
23+
{ name: '일미', age: 35 },
24+
{ name: '이미', age: 45 },
25+
],
26+
};
27+
28+
describe('filterAge', () => {
29+
test('test1', () => {
30+
expect(solution(test1.input)).toEqual(test1.answer);
31+
});
32+
});
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
## 설명
2+
3+
배열 원소중 40 이상인 수만 뽑아 배열을 만드세요.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
// write your codes
2+
function solution(inputArray) {
3+
return inputArray.filter(elem => elem >= 40);
4+
}
5+
6+
exports.solution = solution;
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
const { solution } = require('./solve');
2+
3+
const test1 = {
4+
input: [100, 10, 20, 40],
5+
answer: [100, 40],
6+
};
7+
8+
describe('forEachFilter', () => {
9+
test('test1', () => {
10+
expect(solution(test1.input)).toEqual(test1.answer);
11+
});
12+
});
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
## 설명
2+
3+
배열 원소중 숫자인 원소만 뽑아 배열을 만드세요.
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
// write your codes
2+
function solution(inputArray) {
3+
return inputArray.filter(elem => typeof elem === 'number');
4+
}
5+
6+
exports.solution = solution;
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
const { solution } = require('./solve');
2+
3+
const test1 = {
4+
input: [1, 40, '라매', '개발자', 51.5, 'a', 88],
5+
answer: [1, 40, 51.5, 88],
6+
};
7+
8+
const test2 = {
9+
input: [1, 2, 3, '4', 5, '6'],
10+
answer: [1, 2, 3, 5],
11+
};
12+
13+
const test3 = {
14+
input: [-3, -2, -1, 0, 1, 2, 3],
15+
answer: [-3, -2, -1, 0, 1, 2, 3],
16+
};
17+
18+
describe('forEachFilterIsNaN', () => {
19+
test('test1: 숫자,문자 판별', () => {
20+
expect(solution(test1.input)).toEqual(test1.answer);
21+
});
22+
test('test2: 문자로된 숫자 판별', () => {
23+
expect(solution(test2.input)).toEqual(test2.answer);
24+
});
25+
test('test3: 음수 양수 포함', () => {
26+
expect(solution(test3.input)).toEqual(test3.answer);
27+
});
28+
});
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
## 설명
2+
3+
forEach 메소드를 사용해서 배열의 각 원소 끝에 '%'를 붙인 문자열 배열을 출력하세요

0 commit comments

Comments
 (0)