티스토리 뷰

javascript30

04 - Array Cardio Day 1

주먹불끈 2019. 3. 5. 16:06

Array 가지고 이런저런 장난을 쳐보자

 

inventors 오브젝트 배열을 가지고 놀아보자

 


1) first, last, year, passed 값을 가지고 있는 구조체가 있고,

2) 구조체들로 이루어진 배열이 있다.

 

이걸로 장난을 쳐보자



Array.prototype.filter()

 

Filter the list of inventors for those who were born in the 1500's

1500 년대에 태어난 inventor 추려내보자

 

filter() 먹여주는 함수가 true return 하는 경우만 추가해서 회신한다.

1) 익명함수로 리턴값이 true 경우만 filtering 해서 회신해준다.

2) 화살표 함수로 좀더 간결하게 표현 가능. 하지만 아직은 낯선 방식이다.


 

Array.prototype.map()

 

Give us an array of the inventors' first and last names

inventor 퍼스트, 라스트 네임을 배열로 뽑아내보자

 

map() 입력값을 받아서 함수가 만들어주는 출력값으로 만들어 회신해준다.

 

 



 

Array.prototype.sort()

 

Sort the inventors by birthdate, oldest to youngest

생년을 기준으로 나이 많은 순서대로 정렬

 

sort() 먹인 함수가 음수를 리턴하면 그대로, 양수를 리턴하면 둘의 순서를 바꾼다.

 

1) 조건에 대한 양수, 음수 리턴값의 위치를 바꿔보고

2) 1, -1 아니라 100, -100 같이 수도 양수 음수이기만 하면 바뀌는 확인함


 

// output

// total years: 861

Array.prototype.reduce()

 

How many years did all the inventors live?

- 모든 inventor 들의 살아온 시간들의

 

화살표 함수가 정의된 직후에 total 초기값을 0 으로 해두었다.

 

reduce() 함수는 개의 파라미터를 받는데, 첫번째는 reducer 함수, 두번째는 초기값이다.

(참고 코드)


Sort the inventors by years lived

이번에는 살아온  햇수

 

다시 복습하자.

 

sort() 함수는 파라미터로 들어간 함수가

- 음수를 회신하면 순서를 그대로 두고,

- 양수를 회신하면 순서를 바꾼다.

 

 

 

 

create a list of Boulevards in Paris that contain 'de' anywhere in the name

 

링크: https://en.wikipedia.org/wiki/Category:Boulevards_in_Paris

파리의 이름 'de' 들어간 지명을 모두 찾는 것이다.

 

이건 링크로 가서 F12 Dev Tool console 에서 하나씩 해보는 거다.

 

1) 링크로 가서 F12 열어, Element tab 에서 하나씩 건드려보면, 우리가 원하는 부분은 "mw-category" 이다.

 


 

2) 이제 Console tab 에서 아래 명령을 하나씩 수행하면 원하는 값을 얻을 있다.

- 우선 `.mw-category` 선택하고, 이후 'a' 태그를 모두 선택

- map(), filter() 함수를 사용하기 위해 Array 바꾸어야 한다.

- 그리고 마지막으로 map(), filter() 함수를 이용하여 원하는 값을 추출해낸다.

 



 

배열 가지고 놀기

 

 

sort Exercise

 

Sort the people alphabetically by last name

- last name (위에서 앞에 나오는 것임) 기준으로 알파벳 순서로 sort

 

1)  split 이용하여 last name, first name 나눠준 다음

2) last name 만을 가지고 sort 작업

 

Reduce Exercise

 

Sum up the instances of each of these

같은 instance 개수를 계산해보기

 

1) reduce() 함수의 파라미터는 reducer (reduce 해주는 함수)  초기값이다.

- 여기서 초기값은 구조체  이므로 {} 라고 되어 있다.

2) obj[item] 자체가 없다면 처음 나온 녀석이므로 초기화를 해주고

3) 이후에 값을 하나씩 추가해준다.

 




반응형

'javascript30' 카테고리의 다른 글

06 - Type Ahead  (0) 2019.03.08
05 - Flex Panel Gallery  (0) 2019.03.06
01 - JavaScript Drum Kit - FINISHED  (0) 2019.02.28
01 - JavaScript Drum Kit - START  (0) 2019.02.28
Start JavaScript 30 - 공부방법 업데이트  (2) 2019.02.28
반응형
잡학툰 뱃지
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
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
글 보관함