목록개발 공부/JavaScript (12)
Just Do IT!
Jest란? 페이스북에서 만들어서 React와 더불어 많은 자바스크립트 개발자들로 부터 좋은 반응을 얻고 있는 테스팅 라이브러리다. Jest는 라이브러리 하나만 설치하면, Test Runner와 Test Mathcher 그리고 Test Mock 프레임워크까지 제공해주기 때문에 현재 대세라고 말할 수 있다. ☞ all-in-one 테스팅 라이브러리 아래 링크에서 더 자세한 설명과 설치법을 볼 수 있다. https://jestjs.io/docs/getting-started Getting Started · Jest Install Jest using your favorite package manager: jestjs.io 설치 npm install -D jest //개발 의존성으로 설치 test 스크립트 수정하..
Intl API란? Intl 개체는 ECMAScript 국제화 API의 네임스페이스로, 언어 구분 문자열 비교, 숫자 형식, 날짜 및 시간 형식을 제공한다. Intl API를 사용하면 각 나라의 언어와 표현에 맞게 날짜 혹은 시간 등을 표시해줄 수 있다. 참고: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl Intl - JavaScript | MDN The Intl namespace object contains several constructors as well as functionality common to the internationalization constructors and other la..
순수함수 (pure function) 입력값에 대해 항상 동일한 출력값을 반환하며, 함수 외부에 영향을 끼치는 부작용(side effect)이 없는 함수 함수의 실행 결과는 오직 입력 값에만 의존하며, 외부의 상태(state)를 변경하지 않는다 불변성(immutability)을 보장한다 불변성 : 데이터나 상태가 변경되지 않는 것을 의미하며, 함수형 프로그래밍에서는 데이터를 변경하는 대신 새로운 데이터를 생성하는 방식을 취한다 순수 함수를 사용하면 상태 변경이 없기 때문에 프로그램의 안정성이 높아지고, 디버깅이 쉬워진다 반면 순수 함수가 아닌 함수는 부작용이 발생할 수 있다 side effect 함수의 실행 결과가 입력값 이외의 외부 상태를 변경하는 것 부작용은 예측하기 어렵기 때문에 코드를 이해하고 디..
this this의 값은 this가 사용된 함수가 어떤 방식으로 "실행"되었는지에 따라 달리진다. 선언된 부분만으로는 무엇을 가리키는 지 알 수 없다. 1. 일반 함수 실행 방식 strict mode가 아니면 무조건 global object를 가리킨다. (브라우저에서는 window) var age = 1; // global object function foo() { console.log(this.age); //this === global object : 브라우저에서는 window를 가리킨다. } foo(); // 1 (글로벌 객체 실행) new foo(); // undefined strict mode (엄격모드) strict mode란? : https://developer.mozilla.org/ko/do..
Hoisting (호이스팅) 코드가 실행하기 전 변수선언/함수선언이 해당 스코프의 최상단으로 끌어 올려진 것 같은 현상 함수 안에 있는 선언들을 모두 끌어올려서 해당 함수 유효 범위의 최상단에 선언하는 것 자바스크립트 함수는 실행되기 전에 함수 안에 필요한 변수값들을 모두 모아 유효 범위의 최상단에 선언한다 자바스크립트의 모든 선언에는 호이스팅이 일어난다. let, const, class를 이용한 선언문을 호이스팅이 발생하지 않는 것처럼 동작한다 var 선언 단계와 초기화 단계가 한번에 이루어진다 변수 선언문 이전에 변수에 접근하여도 스코프에 변수가 존재하기 때문에 에러가 발생하지 않는다. (undefined 반환) console.log(text); // ReferenceError text = 'Hell..
function Sum(num1, num2) { return num1+num2; } // num1, num2는 parameter Sum(5, 10); // 5, 10 은 argument Parameter = 매개변수 (변수) 함수를 정의할 때 사용하는 변수 메소드 선언의 변수 목록 인자를 받기 위한 매개채로써 선언된 변수라는 의미 함수 내부에 있는 인자로써 특정한 값이 정해져 있는 것이 아니라 함수가 호출하면서 건내준 argument 값이 변수(variable)에 담기게 된다 실제 매개 변수 (actual parameter) : 인자가 특정 변수의 값으로 넘겨지는 경우 이 특정 변수를 실제 매개 변수라 부른다 형식 매개 변수 (formal parameter) : 인자값을 변수로 넘겨줄 때 이를 형식 매개..