📘 자바스크립트 학습 정리 (0608)
✅ 스코프(Scope)
- 전역 스코프: 어디서나 접근 가능한 변수
- 지역 스코프: 함수 내부 변수, 외부에서는 접근 불가
- 블록 스코프:
{} 안에서만 유효 (let, const)
⚠️ 전역 변수는 충돌, 디버깅 문제의 원인이므로 최소화
✅ 함수 선언 방식
- 함수 선언문:
function fn() {} → 호이스팅 O
- 함수 표현식:
const fn = function() {} → 호이스팅 X
- 화살표 함수:
const fn = () => {} → 간결함, this 바인딩 없음
✅ 일급 객체로서의 함수
- 함수는 값처럼 변수에 저장하거나 다른 함수에 전달 가능
- 고차 함수: 함수를 인수로 받거나, 함수를 반환하는 함수
filter & map 구현 예시
filter(arr, fn): 조건에 맞는 요소만 필터링
map(arr, fn): 각 요소를 가공해 새 배열로 반환
✅ 객체 & 배열 고급 활용
- 배열 안에 다양한 타입 저장 가능 (문자, 객체, 함수 등)
- 객체 내부에 메서드(함수)를 포함해 동작 구현 가능
✅ 실전 응용: 사용자 배열 처리
- 이름 포함 조건, 지역 필터링, 취미 수에 따른 필터링 등 다양한 로직 구현
- mapByUser, filterUser 함수로 재사용성 높은 코드 작성
✅ 요약
- 스코프, 함수, 객체/배열 조합을 통해 복잡한 로직을 설계하고 유연한 데이터 처리를 실습함