1.JavaScript 是什么类型的语言?
- 弱类型:意味着你不需要JavaScript引擎声明的变量是什么类型,JavaScript引擎在运行代码时候会自己算出来
- 动态:可以使用同一个变量保存不同类型的数据
var bar
bar = 12
bar = "极客时间"
bar = true
bar = null
bar = {name:"极客时间"}
2.内存空间
原始类型:Boolean、Null、Undefined、Number、String、Symbol
引用类型: Object
function foo(){
var a = "极客时间"
var b = a
var c = {name:"极客时间"}
var d = c
}
foo()
- 基本类型的数据值都是直接保存在“栈”中,其赋值是完整复制变量值
- 而引用类型的值都是存放在“堆”中,“栈”中保存引用类型的引用地址,其赋值是赋值引用地址