JS=>原始資料型/参考資料型


元のデータ型


6つの非オブジェクトでメソッドを持たないタイプ.
string/number/bigint/boolean/undefined/symbol/(null)
Ex) let num1 = 123;//変数には1つのデータしか含まれていません.
この6つのタイプは1つの「情報」しかありません
つまり、データが含まれています.
なぜ原始資料型なのか.
従来、データストレージ(メモリ)の容量が限られていたため、1つの変数のデータ容量が限られていたが、
オリジナルの資料型しか入れられないから!

リファレンスデータ型


原始資料型ではないすべては参考資料型です.
配列、オブジェクト、関数が代表的です.
参照モデルは、1つの変数に複数の情報を含めることができます.
これは、値ではなく変数にアドレスを格納するため可能です.
一方,参照資料型のデータストアは,元の資料型のデータストアとは異なる.
特殊なデータウェアハウス(heap)に格納されます.
参考資料型割当先.
let x = { foo: 3 };
let y = x;
y.foo = 2; 
// Q. x.foo의 값은?
// 값이 3이였던 y.foo에 2를 할당한 후, 같은 주소를 바라보고 있던 x.foo도 2가 됨.  

原始資料型と参考資料型の特徴を整理する


元のデータ型が割り当てられた場合、変数自体に値(value)が含まれます.
参考資料型配分の場合、保管箱の住所(reference)が含まれます.
したがって、リファレンスタイプは固定サイズのリポジトリではありません.
特殊なキャビネット(heap)を使用して、サイズを動的に変更できます.