변수와 타입 (typeof)

김민아·2022년 6월 24일
0
post-thumbnail

비가 온 후, 물방울 입자가 프리즘처럼 작용하여 태양광의 가시광선을 분산하고 굴절시키는 현상이.. 떴다. 무지개가 떴다.

변수

학습 목표

  • 변수 사용은 데이터를 편리하게 저장하고 꺼내 쓰는 것임을 이해한다.
  • 자바스크립트에서 변수의 선언과 값의 할당에 대해서 설명할 수 있다.
  • =가 "같다"라는 의미가 아니라 할당 연산자임을 이해한다.
  • 크롬 개발자 도구의 console 탭을 이용하여 원하는 값을 출력할 수 있다.
  • 변수를 사용하여 보다 효과적으로 구구단을 출력할 수 있다.

변수는

어떤 값(데이터)을 담는 저장소(메모리)의 이름을 변수라고 한다.
반복적으로 사용해야 하는 값을 데이터 보관함에 저장하기 위해 사용.

사용 방법

선언 declaration할당 assignment으로 사용할 수 있다.

선언 declaration: 데이터 보관함에 데이터를 넣을 공간을 확보하는 것.

// 변수는 let 키워드와 변수명을 사용하여 선언할 수 있다.
let age;

할당 assignment: 보관함에 데이터를 저장하는 것, 재할당이 가능하다.

// 선언한 변수명에 = 를 사용하여 넣고자 하는 값을 넣어줍니다.
age = 10;

선언과 할당을 동시에 할 수 있다.

let age = 10;

⚠️ 선언은 한번만 합니다.
⚠️ 할당이 없는 변수는 → undefined 타입으로 출력!


실습 → 구구단을 출력해 보자!

let number = 4; // 4단 ... n단으로 쉽게 변경할 수 있다!

console.log(number * 1)
console.log(number * 2)
console.log(number * 3)
console.log(number * 4)
console.log(number * 5)
console.log(number * 6)
console.log(number * 7)
console.log(number * 8)
console.log(number * 9)
console.log(number * 10)

타입

학습목표

  • 원시 자료형 string, number, boolean, undefined의 의미를 이해할 수 있다.
  • 타입마다 다른 속성과 메서드가 있다는 것을 이해할 수 있다.
  • typeof 연산자를 활용하여 특정 값의 타입을 확인할 수 있다.
  • 비교 시 엄밀한 비교( ===!== )의 필요성을 이해할 수 있다.

타입은

변수에 담을 수 있는 데이터는 숫자나 문자처럼 특정한 형태를 가지고 있는데, 문자와 같이 변수에 할당할 수 있는 형태를 말한다. 원시값으로 string, number, boolean, undefined 등이 있고, 복잡한 데이터 구조의 배열이나 객체, 함수 타입도 있다.

타입을 확인해 보자

typeof 연산자를 사용해 타입을 확인할 수 있다. (타입이 문자열로 반환)

typeof(값), typeof 값 → 두가지 문법의 결과는 동일 (함수/연산자).

let pi = 3.14 // 기대값: 숫자

typeof pi 
'number' 
let name = 'tomato' // 기대값: 문자열

typeof name
'string' // 문자열
let nothing // 기대값: 'undefined'

typeof nothing
'undefined' 
let lie = false // 기대값: 'boolean'

typeof lie
'boolean' 
let list = [1,2,3] // 기대값: 객체

typeof list
'object'

실습 → typeof 연산자를 사용해 보자

let pi = 3.14
let width = 3
let height = 5

// 1
console.log(typeof 3.14) 
number

// 2
console.log(typeof pi)
number

// 3
console.log(typeof 7 * 35) // NaN 판정

// 4
console.log(typeof width * height / 2) // NaN 판정

수정

🔴
console.log(typeof 7 * 35)는 NaN 판정이 났다. 기댓값과 다른 결과..
console.log(typeof 4 + 4)의 출력값이 number4 인것을 보아
typeof 4 이후에 문자열과 숫자를 더해 ‘number4’문자열을 출력하는 듯.

🟢
console.log(typeof(7 35)) typeof 함수를 쓰거나
console.log(typeof (7
35)) typeof 전에 먼저 연산을 해주면 기댓값 number로 출력.

// 3
console.log(typeof (7 * 35))

// 4
console.log(typeof (width * height / 2))

// 혹은 
let triangle = width * height / 2
console.log(typeof triangle)

// 숫자뿐만 아니라 문자열도 bool도 마찬가지 

이어서

console.log(typeof '실습과제 하는 중')
// string

console.log(typeof '1')
// string

console.log(typeof 1)
// number

console.log(typeof (1 > 2))
// boolean

console.log(typeof true)
// boolean

0개의 댓글