목록전체 글 (63)
백고등어 개발 블로그
Rest Parameter 란? Rest Parameter는 나머지 인자들, 혹은 여분의 인자들이라는 뜻입니다. 함수를 정의할 때 마지막 인자 앞에 ...을 붙이면 해당 인자 다음에 오는 모든 나머지 인자들을 배열로 만듭니다. 즉, 위의 예시를 보면 3번째 인자인 c 인자 앞에 ...을 붙였으므로 'c', 'd', 'e' 이 3개의 항목이 c라는 이름의 배열로 만들어집니다. arguments 라는 속성이 함수의 모든 파라미터를 유사 배열로 가져오는 것과 비교하면 많은 차이점이 있습니다. Rest Parameter는 유사 배열이 아닌 진짜 배열로 만들어주기 때문에 isArray() 함수를 사용하면 true가 출력됩니다. 유사 배열이란? 자바스크립트에선 배열처럼 인덱스로 접근이 가능하고 length 프로퍼티..
오늘 한 일 테스트 주도 개발 (TDD - Test Driven Development) 에 관해서 학습했다 테스트 주도 개발이란? 테스트를 먼저 만들고 테스트를 통과하기 위한 것을 짜는 것 즉, 만드는 과정에서 우선 테스트를 작성하고 그걸 통과하는 코드를 만들고를 반복하면서 제대로 동작하는지에 대한 피드백을 적극적으로 받는 것이다. 단위 테스트(Unit Test) 프로그램을 작은 단위로 쪼개서 내가 짠 프로그램이 내가 원하는 결과대로 동작하는지 테스트할 수 있다. 단위 테스트를 거치면 프로그램의 안정성이 높아지며, 단위테스트를 믿고 리팩토링을 할 수 있다. mocha 테스트 프레임워크 mocha 프레임워크는 자바스크립트의 테스트 프레임워크중 하나이다. mocha 프레임워크 메소드종류 describe() ..
오늘 한 일 자바스크립트의 변수타입(원시 타입, 참조 타입) 과 변수 키워드, 스코프, 배열, 객체, 전개 구문에 대해서 전체적으로 정리하는 시간을 가졌다. 전체적으로 복습할 수 있었고, 몰랐던 부분도 검색을 통해 추가적으로 알 수 있었다 추가적으로 알게된 것들 렉시컬 스코프 렉시컬 스코프에서는 소스코드가 작성된 그 문맥에서 결정된다. 현대 프로그래밍에서 대부분의 언어들은 렉시컬 스코프 규칙을 따르고 있다. 즉, 함수를 *어디에* 선언하였는지에 따라 결정된다 동적 스코프 동적 스코프는 런타임 도중에 실행 콘텍스트나 호출 콘텍스트에 의해 결정된다. 즉, 함수를 어디에 선언하였는지가 아닌, *어디서* 호출하였는지에 따라 상위 스코프를 결정한다. [렉시컬 스코프] [동적 스코프] 자바스크립트는 렉시컬 규칙을 ..
클로저란? - 클로저는 외부함수의 변수에 접근할 수 있는 내부 함수를 뜻합니다 - 클로저 함수 안에선 세가지의 변수에 접근할 수 있습니다 - 지역 변수 - 해당 클로저 함수를 포함하는 외부 함수의 변수 - 전역 변수 - 클로저 함수는 외부 함수의 변수뿐만 아니라 매개변수에도 접근할 수 있습니다 - 아래와 같이 클로저 함수를 사용할 수 있습니다 - 그렇다면 이러한 클로저 함수를 어떻게 활용할 수 있을까요? 커링 이용 : 함수 하나가 n개의 인자를 받는 대신, n개의 함수를 만들어 각각 인자를 받게 하는 방법 캡슐화 이용 : 변수를 스코프 안쪽에 가두어 함수 밖으로 노출시키지 않는 방법 - 캡슐화란 중요한 데이터를 보존, 보호하는 것을 뜻합니다 템플릿 함수 이용 : html 태그 만들기
- 자바스크립트는 변수나 상수, 매개변수가 생성될 때 스코프가 정해집니다. - 이때 각 변수, 상수, 매개변수가 미치는 범위를 스코프라고 합니다. - 스코프에는 글로벌 스코프와 로컬 스코프가 존재합니다. 글로벌 스코프 VS 로컬 스코프 비교 - 스코프란 현재 접근할 수 있는 변수들의 범위를 뜻합니다. 글로벌 스코프 - 글로벌 스코프란 전역 변수 또는 함수를 뜻하기도 합니다. - 내부 스코프(함수의 내부 스코프 등..) 에서 전역 변수 또는 함수에 접근 할 수 있습니다 - 예를 들면 아래와 같습니다 - myName 변수는 글로벌 스코프를 갖는 전역 변수로 선언되었습니다 즉, 함수 내부에서도 myName 변수에 접근할 수 있습니다 로컬 스코프 - 로컬 스코프란 블록 또는 함수 내에서만 접근할 수 있는 변수이..