Javascript_데이터 타입

ESTHER PARK·2023년 5월 18일
0

Java Script

목록 보기
2/4

데이터 타입에 들어가기 전에 Javascript 역시 특정 변수를 사용하기전에 선언단계가 있어야한다. 다만 Java와의 차이점은 사전에 그 데이터타입을 알필요없다는 것이다. 다만 이게 평생몰라도 된단 뜻은 아니다. 데이터의 형태에따라 사용해야하는 메소드 등의 차이가 있으므로 유의해야한다.

1. 변수의 선언

선언을 할때는 크게 var, let, const와 같은 생성자가 있다. 이는 변수의 타입과관계 없이 사용하는 것인데, 각각 특성이 명확하다. 우리는 이 과정에서 var사용을 지양하기로 하였다.

그 이유는 Javascript를 포함한 프로젝트는 대체로 협업이 중요한데,이에 적합하지않기때문이다.

var
-글로벌 변수와 로컬변수의 경계가 모호
-중복 선언해도 대체될뿐 오류가 발생하지 않음 > 즉 다른사람이 선언해둔 변수를 사용해 삭제시킬 수 있다는 말

이러한 특성이 그 적합성에 위배된다고 할 수 있다.

그중 let과 const의 경우 변수와 상수의 차이라고 할 수 있다. const는 마치 java에서의 final과 비슷한 의미라고 보면 된다.

const는 값을 변경하는것이 원칙적으로 불가능하지만, 배열에서 각각의 값을 꺼내어 바꾸는것은 가능하다.

const ary = [1, 2, 3, 4];
ary = [10,11,12,13]; // 불가능
ary[0] = 100; // 가능

그래서 앞으로는 let을 가장 많이 사용하기로 했다.

2. 데이터 타입

1) 문자열

  • ''또는 ""
  • escape sequence : \n, \t,\b,\,\',\"
let str = "Kim's Bakery";
console.log(typeof str);

2) 숫자형

  • 정수, 진수, 실수, 지수를 나누지 않고 모두 숫자형으로 본다.
let n1 = 12;
console.log(typeof n1); 

3) 논리형

  • boolean 형으로 true와 false값을 가짐
  • 연산이 가능함 (true = 1, false = 0)
let bool = 10<12;
console.log(bool + ": " + typeof bool);
console.log(true + true);

4) 함수형

  • Javascript의 가장 특이한 부분으로 함수도 데이터
  • 즉 대입이나 매개변수(콜백함수), 리턴값으로 사용(고계함수)이가능하다. > 일급함수
function test(data) { 
    console.log("전달된 값 :" + data);   
}

let test2 = test; // 함수 자체를 대입
let test3 = test();  // 함수의 반환값을 변수 대입 
  • 함수는 정의 시 이름이 부여되지 않는 경우 anonymouse function이라고 부른다.

5) 객체(object)

일반적으로 같은 타입의 값을 가지지만, 다른타입끼리도 넣을 수 있다. 그러나 함수를 값으로 취할 수는 없다.

  • [] : 배열 객체(array)
let ary = [1, 2, 3, 4];
console.log(typeof ary);
console.log(ary)
  • {} : object (dictionary/ hashmap)
let obj2 = { "name": 'honggildong', "age": '25' };
console.log(typeof obj2);
console.log(obj2);

6) undefined

  • 값이 존재하지 않는 경우
  • 변수를 선언하고 값을 대입하지 않을때

7) symbol

+) null

  • object로 출력되지만 이는 객체가 아닌 값의 초기화값으로 개발자들이 참조형으로 사용할때 null로 초기화 함

3. 출력하기

1) console.log

console창에 띄워 개발자만 확인하는 방법

2) setTimeout(function, time(ms))

시간차 출력 방법이다.
전달인자로는 출력하고자하는 함수와 밀리세컨 단위의 시간이다.
다음 코드는 1초 후에 timer함수를 출력하는 것이다.

setTimeout(timer, 1000); 

3) setInterval(function, time(ms))

여러번 출력하는 방법이다.
전달인자로는 출력하고자하는 함수와 밀리세컨 단위의 시간이다. 여러번 출력하는 방법이다.
다음 코드는 1초 마다 timer함수를 출력하는 것이다.

setInterval(timer, 1000);

0개의 댓글