객체지향프로그래밍을 배우면서 1급 시민에대해 다시 정리할 필요가 있다고 느껴서, 1급 시민, 1급 객체, 1급 함수, 고차 함수 등에 대해 정리해보려고 한다. 1급시민 프로그래밍 언어에서 1급 시민의 조건은 다음과 같다. 변수에 담을 수 있다. 함수의 인자로 전달할 수 있다. 함수의 반환값(return)으로 전달할 수 있다. 거의 모든 프로그래밍 언어에서 숫자형, 문자형은 1급 시민의 조건을 충족한다. 1급객체 1급객체란, 말 그대로 1급 시민의 조건을 충족하는 객체이다. JavaScript에서 객체는 1급 시민이므로, 1급객체라 할 수 있다. 1급함수 Javascript에서 함수는 객체이며, 따라서 1급 시민에 해당하므로 1급함수라고 할 수 있다. 몇몇 학자들은 1급 함수가 되려면 1급 시민의 조건과 ..