함수

실습에 앞서 환경을 구축합니다.

$ mkdir functions-and-methods
$ cd functions-and-methods
$ npm init --y
$ npm i -D typescript ts-node @types/node
$ asdf local nodejs 16.16.0     //본 실습은 nodejs 16.16.0 환경입니다.
$ npx tsc --init
$ mkdir src                     //소스 코드들을 보관합니다.
...
"main": "src/index.ts",
  "scripts": {
    "dev": "ts-node src",
    "build": "tsc && node dist",
    "test": "echo \\"Error: no test specified\\" && exit 1"
  },
...

함수 정의하고 호출해보기

자바스크립트와 타입스크립트는 함수형 언어와 객체 지향 언어의 특징을 모두 갖고 있다. → 이러한 특징 중 하나인 함수를 객체처럼 다루는 기능이 있다.

프로그래밍 언어가 함수와 변수를 구분하지 않는 기능을 제공한다는 것은 일등 함수(first-class function) 기능을 제공한다는 의미이다. → 이러한 기능을 제공하는 언어를 함수형 프로그래밍 언어라고 한다.