[JS]CoreJavaScript-Ch1
2377 ワード
1️⃣ Data Type
まず、データ型は大きく2つに分けられます.
変数宣言とデータ割当ての基本プロセス
var a;
a = 'abc'
「abc」に個別のメモリ領域を用意し、そのアドレス値を変数に格納します.
なぜ変数にデータを直接入れずにアドレス値を入れないのですか?
(1)データ修正の効率:入力変数のメモリサイズが可変であるため.
変数にデータを配置すると、データのサイズが変化すると、変数が占めるスペースを変更する必要があります.
(2)重複データ処理の効率:重複データに対しては、重複データのアドレス値を重複記憶し、変数に割り当てるだけでよい(数学における置換概念)
基本形状と参照形状の違い
--> false
aが記憶するアドレス値とbが記憶するアドレス値とは異なり、aが記憶する10、bが記憶する15
逆に、--> True
オブジェクトには、アドレス値を参照する手順もあります.
obj 1、obj 2は同じアドレス値と見なすことができ、そのアドレス値の可変領域では、アドレス内のデータがc:10->c:15に変更されるため、obj 1とob 2は同じである.
通常、基本型データは
불변형
、参照型データは가변형
と呼ばれる.しかし、厳密には、参照型データの「可変」は、データ自体ではなく内部プロパティを変更する場合にのみ成立する.
すなわち、データ自体を変更する場合は、基本型と参照型の両方が
불변
であるべきである.オブジェクトを一定に保つ場合
この場合、本来作成したobj 1オブジェクトは保持され続け、obj 2を再作成し、obj 1に基づいて名前を変更したいだけですが、obj 1もobj 2のように名前を変更されます.
すなわち,本オブジェクトを一定に保たなければならない場合がある.
表計算ドキュメントの浅いレプリケーション
But,コピーはオブジェクト内のオブジェクトネストされたオブジェクト文には適用されません!
¥¥¥¥¥対象深度コピー
11 JSONの簡単な深度コピー
(ただしメソッドまたはJSONに変更できないすべてのPropertiesは無視)
各種ライブラリの使用
UndefinedとNullの違い
Undefined->値が指定されていない場合、JSエンジンは未定義を返します.
値のない変数
cf)未定義とEmpty(空の要素)
空の要素は
순회와 관련있는 배열 메소드(forEach, filter, map, reduce 등)
ターゲットに含まれません🔮ではNullとの違いは?
符号化の際に
비어있음
を明示的に表示したい場合に用いられるのがnull
である.undefined
は私たちが直接使ったのではなく、JSエンジンが返した結果です.△いいけど、あきらめましょう.Reference
この問題について([JS]CoreJavaScript-Ch1), 我々は、より多くの情報をここで見つけました https://velog.io/@hello1358/JSCoreJavaScript-Ch1テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol