javascript_data type

Block scope

{
 let name = 'hyojung'
 console.log(name);
}

block안에 코드를 작성하게 되면 block밖에서는 block안에 있는 내용을 못 본다. block밖에서 console.log(name); 를 접근하면 값이 나오지않는다.

Global scope

let name = 'hyo';
console.log(name);

block을 쓰지않고 파일안에서 바로 정의해 사용하는 변수들을 global scope 이라고 한다 (어느곳에서나 접근 가능함) global한 변수들은 항상 메모리에 탑재되어있어서 최소한으로 필요할 때만 정의해서 쓰는 것이 좋다.

variable types

primitive type과 object type으로 나눠진다

primitive type:더이상 작은 단위로 나눠질 수 없는 한가지 item
ex) number, string, boolean, null, symbol

object type : single item들을 여러개를 묶어서 한 단위로 관리해주는 것

number

c와 java와 달리 data type을 선언하지 않고 사용가능하다

연산을 제대로 하지 않으면 숫자가 아닌 infinity, NaN을 받아서 에러가 날 수 있기 때문에 연산할때 값이 valid한지 주의해야한다.

연산

곱하기 : console.log (1*2);
나누기 : console.log (1/2);
나머지 : console.log (1%2);

boolean

const name = "hyo";
const age = 30;

console.log(name === 'hyo') // true
console.log(age>40) // false

null&undefined

null : 존재하지 않는값

ex) let user=null; 유저는 존재하지 않는다

undefined : 값이 할당되지 않음

let age
console.log(age)

변수를 선언하고 할당되지 않았을 경우

typeof

typeof : 변수의 자료형을 알 수 있다.

console.log(typeof 3 ); : number
console.log(typeof null); : object
console.log(typeof "hyo"); : string

dynamic typing

c나 java는 변수를 설정할 때 어떤 타입일지 결정해서 type을 같이 선언하는 반면에 javascript는 어떤 타입일지 선언하지 않고 runtime때 할당된 값에 따라 type이 변경된다.

유연하지만 규모가 있는 프로젝트를 만들때는 적합하지 않는다.

좋은 웹페이지 즐겨찾기