ホームページ  >  記事  >  ウェブフロントエンド  >  JS の基本的なデータ型と参照型、および深いコピーと浅いコピーとメモリ割り当ての問題についての紹介

JS の基本的なデータ型と参照型、および深いコピーと浅いコピーとメモリ割り当ての問題についての紹介

巴扎黑
巴扎黑オリジナル
2017-09-04 10:24:451329ブラウズ

以下のエディターでは、JS の基本的なデータ型と参照型、深いコピーと浅いコピーの問題、メモリ割り当ての問題について簡単に説明します。編集者はこれがとても良いものだと思ったので、皆さんの参考として今から共有します。エディターをフォローして一緒に見てみましょう

jsの深いコピーと浅いコピーの問題

浅いコピーは一般に基本型のコピーを指します

深いコピーは一般に参照型のコピーを指し、参照型の値もコピーされます

例えば

h5のsessionStorageは文字列しか保存できないので、JSONを保存したい場合はJSON.stringify()を使ってjsonを文字列に変換してからJSONを使う必要があります.parse() を使用して json データに変換します

欠点: JSON.parse と JSON.stringify は IE9+ 以降のみをサポートします

この問題を解決するには、深さ比率コピーメソッドを使用できます

js におけるメモリ割り当ての問題 (ヒープとスタック)

js 基本型は通常、スタックに格納されます。これらの型はそれぞれメモリ内の固定サイズの領域を占有し、その値は値によってアクセスするスタック領域に格納されます。

参照型は可変サイズのデータ​​ですが、アドレスサイズは固定されているため、アドレスはスタックに格納され、値はヒープに格納されます

1: 基本型を格納します。 ヒープ メモリ: 参照型を保存します (このオブジェクトの参照に使用される、ヒープ メモリ内のオブジェクトのアドレスを保存するために、基本型の値をスタック メモリに保存します)

2. 基本型は、現在の実行環境の終了時に破棄されます。このオブジェクトは、それを参照するすべての変数が存在しなくなった場合にのみ、ガベージ コレクション メカニズムによってリサイクルされます。

jsの基本データ型と参照型

基本データ型には、数値、ブール文字列、未定義のnull記号が含まれます

参照データ型: 配列obj関数

以上がJS の基本的なデータ型と参照型、および深いコピーと浅いコピーとメモリ割り当ての問題についての紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。