← Back to NOTES 🌰 ← Effective JavaScript 🤿

← 아이템 55 - 키워드 인자를 위해 옵션 객체를 받아들여라

핵심 요약

자세한 내용

무상태 API란?

해당 API 동작이 프로그램의 상태 변화에 의존하지 않고 입력 값에만 의존하는 함수나 메서드를 제공하는 API를 말한다.

예시: String의 메서드 toUpperCase() - 'foo'.toUpperCase()는 항상 'FOO'를 반환

상태 유지 API란?

프로그램의 상태 변화에 의존하며, 상태에 따라 함수나 메서드가 다르게 동작하는 API를 말한다.

예시: Date 객체의 메서드들 - 동일한 Date 객체의 toString 메서드는 Date 프로퍼티가 다양한 설정 메서드들로부터 수정됨에 따라 그에 의존하여 다른 결과를 만듦

Canvas API 예제

대표적인 상태 유지 API는 웹의 Canvas 라이브러리가 있다.

ctx.fillText("hello world", 75, 75);
// 캔버스 내 그릴 문자와 위치를 제공

하지만 글자 색상, 투명도, 글자 스타일과 같은 것들은 디폴트 값이 없어 따로 지정해야 한다.