js中常见的数据类型分为两种:基本数据类型、复杂数据类型。
基本数据类型把数据名和值直接存储在栈中。
复杂数据类型在栈中存储数据名和一个堆的地址,在堆中存储属性及值。访问时先从栈获取地址,
再到堆中拿出相应的值
总结:基本数据类型复制的是值,复杂数据类型复制的是引用地址。
为什么划分数据类型?
计算机为了更方便的对内存进行管理,对不同的数据,做了类型上的划分。
如何查看一个变量的数据类型?
使用typeof命名
例如:
var x = 5;
var res typeof x;
变量的数据类型有
number===整数、浮点数
string===字符串
boolean===布尔类型
undefined===对于js来讲,一个变量如果没有复制,不能确定类型,类型就是undefined
object===对象类型
function===函数类型
null 的类型也是object
使用一个没有被var定义的变量,系统会报错。