ホームページ > 記事 > ウェブフロントエンド > JS の基本構文の概要: データ型と変数型
この記事では、js の基本的な構文、つまり特定の参照値を持つ変数の型について説明します。必要な方は参考にしていただければ幸いです。
1.変更できない元の値(スタックデータ)(5つ)
数値(数値)、文字列(文字列)、ブール値(ブール値)、未定義、null
ここで、未定義は未定義を意味し、Nullは空を意味します。両者の間には、null には値がありますが、この値は空であるのに対して、unknown は未定義で値がまったくないことを意味します。 null は通常、プレースホルダーとして使用されます。var a = 4; var b = a; a = 10; console.log(b);//4//原始值是把一个值a放到另一个值b里面,改了第一个值a,第二个之值b不变2. 参照値(ヒープデータ)Array(配列)、object(オブジェクト)、function(関数)注: 変数に値が割り当てられている限り、メモリは再割り当てされます。適用されました
var arr = [1, 2]; var arr1=arr; arr.push(3); console.log(arr1); //[1, 2, 3] //引用值时把第一个值放到第二个值里面,改变第一个值,第二个值也改变 //引用值是在栈内存里面存放堆的地址,拷贝的是地址,所以改变了arr,实际上是改变了arr指向的地址内存放的内容,而arr和arr1指向同一个地址,故arr1也跟着变[ 1,2]
地址 |
变量 |
存储值 |
0x0001 |
a (1) |
n:0x0002 n:0x0004 ---(1) |
0x0002 |
-n- (1) |
1 |
0x0003 |
b |
0x0001 |
0x000 4 |
n (1) |
0x0005 |
0x0005 |
a (1) |
m:0x0006 (2) |
0x0006 | m (2) |
1 (2) |
var a = {n:1}; var b = a; a={m:1};//a重新赋值,换了一个房间,b仍然指向原来的房间(地址) a.n =a; console.log(a);//{m:1,n:{m:1,n:{..}}}//一直循环 console.log(b);//{n:1}
相关推荐:
以上がJS の基本構文の概要: データ型と変数型の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。