Home >Web Front-end >JS Tutorial >Introduction to js basic syntax: data types and variable types
This article brings you an introduction to the basic syntax of js: data types and variable types, which have certain reference value. Friends in need can refer to it. I hope it will be helpful to you.
1. Unchangeable original values (stack data) (five)
Number (number), string (string), Boolean value (boolean), undefined, null
Among them; undefined means undefined, and null means empty. The difference between them is that null has a value, but this value is an empty value, while undefined means undefined and has no value at all. null is generally used as a placeholder.
var a = 4; var b = a; a = 10; console.log(b);//4//原始值是把一个值a放到另一个值b里面,改了第一个值a,第二个之值b不变
2. Reference value (heap data)
Array, object, function
Note: As long as a variable is assigned a value, the memory will be re-applied
var arr = [1, 2]; var arr1=arr; arr.push(3); console.log(arr1); //[1, 2, 3] //引用值时把第一个值放到第二个值里面,改变第一个值,第二个值也改变 //引用值是在栈内存里面存放堆的地址,拷贝的是地址,所以改变了arr,实际上是改变了arr指向的地址内存放的内容,而arr和arr1指向同一个地址,故arr1也跟着变
Address |
Variable |
Stored value |
|||||||||||||||||||||
0x0001 |
arr |
[1,2] [1,2,3] e7dea7ebec345b95908f3946bdf704ce{m:1} b: {0x0001}--->{n:0x0004}---->{ n:0x0005}---->{n:{m:0x0006}}--->{n:{m:1}}
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} 相关推荐: |
The above is the detailed content of Introduction to js basic syntax: data types and variable types. For more information, please follow other related articles on the PHP Chinese website!