JavaScript 20일차

펭도리·2021년 2월 21일
0

JavaScript

목록 보기
20/32
post-thumbnail

저번 시간에 공부하였던 filter에 대해서 좀더 공부해보자.

	let students = [
            {이름:'윤인성', 국어:87, 수학:98, 영어:88, 과학: 95},
            {이름:'장호영', 국어:40, 수학:60, 영어:10, 과학: 100},
            {이름:'서준서', 국어:33, 수학:70, 영어:70, 과학: 20},
            {이름:'박인환', 국어:88, 수학:100, 영어:60, 과학: 45}
        ];
 
        let filterA = students.filter((item) => item > 90);
        console.log(filterA);

        let filterB = students.filter((i) => ((i.국어 + i.수학 + i.영어 + i.과학) / 4) > 90);
        console.log(filterB);

        /*
        let filteredA = students.filter(function(item) {
            return item > 90;
        });
        console.log(filteredA);

        let filteredB = students.filter(function(item) {
            return ((item.국어 + item.수학 + item.영어 + item.과학) / 4) > 90;
        });
        console.log(filteredB);
        */

화살표 함수는 ES6문법입니다. function 키워드 사용해서 함수를 만든 것보다 간단히 함수를 표현할 수 있습니다. 화살표 함수는 항상 익명입니다.
주석처리된 부분과 위의 화살표함수로 표현된 구문은 같은 구문입니다.

filterA는 아무것도 출력되지 않습니다. 이유는 item의 대상을 지정해주지 않았기 때문입니다.
따라서 filterB처럼 객체에서는 i 요소의 국어 i 요소의 수학 이렇게 지정해 주어야 정확하게 필터링할 수있습니다.

profile
풀스택 개발자가 되고싶은 코린이 이한글

0개의 댓글