Today I Learned
youtube dream coding js - 9 array-api
// Q1. 배열을 가지고 String 만들기
{
const fruits = ['apple', 'banana', 'pear'];
const result = fruits.join(', ');
console.log(result);
}
// Q2. String 가지고 배열 만들기
{
const fruits = 'apple, kiwi, banana, cherry';
const result = fruits.split(', '); // (구분자, limit(옵션))
console.log(result);
}
//Q3. 배열 descending
{
const array = [1, 2, 3, 4, 5];
const result = array.reverse();
console.log(result);
}
class Student {
constructor(name, age, enrolled, score) {
this.name = name;
this.age = age;
this.enrolled = enrolled;
this.score = score;
}
}
const students = [
new Student('A', 29, true, 45),
new Student('B', 28, false, 80),
new Student('C', 30, true, 90),
new Student('D', 40, false, 66),
new Student('E', 18, true, 88)
];
//Q5. 스코어가 90인 학생찾기
{
const result = students.find(function (student, index) {
return student.score === 90;
});
console.log(result);
}
//Q6. 등록된 학생만 배열만들기
{
const result = students.filter((student) => student.enrolled);
console.log(result);
}
//Q7. 학생들 점수 결과만 가져와서 배열만들기
{
const result = students.map((student) => student.score);
console.log(result);
}
//Q8. 점수 50 아래 학생이 있는지 체크
{
const result = students.filter((student) => {
if (student.score < 50) return true;
});
console.log(result); // 각 students 를 filter
// 해서 조건에 맞으면 해당 student가 true이면 student 반환
// 즉 filter는 조건이 true가 됐을때 그 객체를 반환
const result2 = students.some((student) => student.score < 50);
console.log(result2); // students 중 some이 student.score < 50이면 true반환
const result3 = students.every((student) => student.score < 50);
console.log(result3); // every student가 student.score < 50 만족하면 true반환
}
console.clear();
// Q9. 학생들의 평균점수 구하기
{
const result = students.reduce((previous, current) => previous + current.score, 0); // reduce는 값을 누적해서 조작하는거
console.log(result / students.length);
}
console.clear();
// Q10. 학생들의 모든점수를 String 으로만들기
{
const result = students
.map((student) => student.score) // student.score로 새 배열을 map
.filter((score) => score >= 50) // score >= 50인 것을 filter해서 재배열
.join(); // 배열의 값들을 String으로 변환
console.log(result); // 80,90,66,88
}
// Q11.
{
const result = students
.map((student) => student.score)
.sort((a, b) => a - b);
console.log(result);
}
포인트
- api 설명서 읽고 로그함수찍으면서 이해하기