사용자 도구

사이트 도구


book:ecmascript:type

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

다음 판
이전 판
book:ecmascript:type [2022/09/23 06:20] – 만듦 taekgubook:ecmascript:type [2025/04/15 10:05] (현재) – 바깥 편집 127.0.0.1
줄 1: 줄 1:
 +====== Type ======
 + Javascript는 변수선언시에 data type을 지정하지 않는다. 이것은 변수에 모든 data type를 지정할 수 있을 음 의미한다.
  
 +===== Scalar Type =====
 +우선 종류를 알아보자.
 +
 +==== undefined ====
 + 좀 이상하지만 이것이 javascript에서 중요하다. 어찌하여 무(無)가 중요할까?
 +
 + 당연히 ''없음''은 중요하다. 철학적인 문제도 있고, 너무 나아갔나?
 +
 + ''undefined''는 좀 이상하다. ''javascript''에서는 ''reserved keyword''로 지정하지 않았다. 그리하여 변수명으로 undefined를 사용할 수 있다고 한다.
 + 그리하여 일부에서는 명확한 정의를 위하여 **void(0)**라는 것으로 ''undefined''를 대체하기도 한다. ''void''는 ''javascript''의 ''reserved keyword''이지만, 언어에서 명확한 정의를 하지 않았고 리턴값은 ''undefined''이다.
 +
 +==== number ====
 + 우리가 컴퓨터 언어에서 생각하는 일반적인 ''수''이다. ''integer''와 ''double''등을 구별하지는 않는다.
 +
 +==== string ====
 + 문자열이다. ''character''의 나열이라고 보면된다. 다른 언어의 ''char''를 표현하는 것은 없다.
 +
 +==== function ====
 + ''함수''이다. 수학에서 의미하는 함수를 나타내는 ''type''이라고 보는 것이 머리가 안 아프다. 조금만 깊은 설명을 들어가면 정의하기 어려운 부분이 많이 있다.
 + 물론 정확인 어떤 개념인지는 인지하고 넘어가야 한다. 진정한 engineer 측면에서는 language specfication을 직접 읽어 보고 싶기도 하다.
 +
 +=== 기본정의 ===
 +<code javascript>
 +function f(x){
 +  return x*x;
 +}
 +</code>