✍ Today I Learned
- [절기를 맞춰라]
- 결괏값 저장은 전역 변수뿐만 아니라 배열도 활용할 수 있다.
- 가져오려는 데이터가 값 자체인지, 배열의 길이인지, 데이터 타입이 무엇인지 흐름을 놓치지 말자.
- 배열을 전체 순회하려면 for of 문을 활용한다. (반복문 안에서 삼항 연산자도 사용 가능)
- 데이터를 다룰 때 배열과 객체를 혼용하여 다루는 경우가 많다. (JSON 데이터가 그런 형태)
// https://finance.naver.com/ 의 TOP 종목 데이터를 구조화 해보기
const top = {
"거래상위": [
{
name: 'KODEX 200선물인버스2X',
price: 2515,
updown: -100,
ratio: -3.82,
},
{
name: '메이슨캐피탈',
price: 786,
updown: 75,
ratio: 10.55,
},
{
name: '메이슨캐피탈',
priceInfo: [
786, 75, 10.55, 711, 900, 133956316, 780, 772, 111787
]
},{..},{..},
],
"상승": [...],
"하락": [...],
"시가총액 상위": [...],
};
- 객체 끝에 세미콜론!!
- 메서드 오버 로딩(method overloading) - 메서드명이 같아도 파라미터의 형태를 달리하여 중복으로 사용할 수 있게 만드는 기법
forEach()
메서드는 반환 값이 따로 없다. (map()
, filter()
메서드는 새로운 배열로 반환)
- 배열에서 최댓값(최솟값)을 찾으려면 sort()로 정렬한 후 양 끝의 값을 얻을 수도 있지만 전체 배열을 정렬해야 하므로 비효율적이다.
Math.max.apply
를 사용하면 최댓값을 찾을 수 있다.
function myArrayMax(arr) {
return Math.max.apply(null, arr);
}
// 최솟값은 max -> min 으로 변경