*问题:在js调用函数时传递变量参数时,是值传递还是引用传递?
* 理解一:都是值传递(值/地址值)
* 理解二:可以是值传递,也可以是引用传递(地址值)
var a = 3;
function fn (a) {
a = a+1;
}
fn(a);
console.log(a); //3
function fn2(obj) {
console.log(obj.name);
}
obj = {name: 'Tom'};//先读取obj内容 然后赋值obj = obj
fn2(obj);
问题:JS中如何释放内存
1、内存生命周期
* 分配小内存空间
* 存储数据、可反复读取
* 释放小内存空间
2、释放内存
* 局部变量: 函数执行完自动释放
* 对象:成为垃圾对象 ==> 被垃圾回收器回收
var a = 3;
var obj = {};
obj = undefined;
function fn () {
var b = {};
}