#4 Types in Javascript

1429 ワード

を選択します。


1)弱いタイプ:変数にタイプ(資料型)を指定する必要はありません.
2)強いタイプ:変数にタイプ(資料型)を指定する必要があります.

--- javascript

let a = "Hello" (문자형)

a = 12 (숫자)

자료형을 명시할 필요가 없고, 자료형 변환이 가능하다.(약타입)

--- C언어

int b = 2; (숫자) 

char c = "Hi" (문자형)

변수 선언시 타입을 명시해야하며 지정된 타입은 변할 수 없다.(강타입)
静的言語:コンパイルフェーズでは、変数のデータ型は変更されません.
動的言語:コンパイルフェーズでデータ型を変更できます.
javascript
const a = 10 (숫자)
const b = "10" (문자)

console.log(a+b) // 1010

컴파일 단계에서 a의 값이 10에서(숫자) "10"(문자)으로 자동으로 바뀌어서 실행되었다. 

JavaScriptのデータ型


JavaScriptのデータ型は、元のタイプと参照タイプに大別されます.
1)元のタイプ(元のタイプ)
宣言変数値を保存するデータ型を示します.
number、string、boolean、undefined、null、symbolが含まれます.
const a = 1;
const b = 1;

console.log(a === b) // true

const c = "hi!"
const d = "hi!"

console.log(c === d) // true

변수의 저장된 값을 비교하기 때문에 결과는 모두 true이다.
2)参照タイプ(参照タイプ)
これは、宣言変数のメモリアドレスを格納するデータ型を意味する.
元のタイプを除いて、object、array、functionを含む参照タイプがすべてです.
const a1 = { a: '1' }
const a2 = { a: '1' }

console.log(a1 === a2) // false

a1의 할당된 값과 a2에 할당된 값은 같지만 결과는 false 이다.
왜냐하면 a1, a2는 참조타입이기 때문에 a1의 메모리 주소와 a2의 메모리 주소를 비교하기 때문이다.
したがって,reference type資料型の値を比較する際には注意が必要である.