javascript复习三

本文探讨了JavaScript中变量的赋值机制,包括基本类型和引用类型的差别,以及函数调用时参数传递的方式。同时介绍了JavaScript引擎如何管理和释放内存。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

var a=xxx,a内存中到底保存的是什么?

xxx是基本数据,保存的就是这个数据

xxx是对象,保存的是对象的地址值

xxx是一个变量,保存的是xxx的内存内容(可能是基本数据也可能是地址值)

关于引用变量赋值问题

2个引用变量指向同一个对象,通过一个变量修改对象内部数据,另一个变量看到的是修改之后的数据。

2个引用变量指向同一变量,让其中一个引用变量指向另一个对象,另一个引用变量仍然指向之前的对象。

var a = {age:12}

var b = a

a={name:'bob',age:13}

console.log(b.age)//12

b.age = 14

console.log(b.age,a.age)//14 13

function fn(obj){

obj = {age:15}

}

console.log(fn(a))//15

console.log(a.age)//13

在js调用函数时传递变量参数时,是值传递还是引用传递?

1.都是值(基本值/地址值)传递

2.可能是值传递也可能是引用传递

js引擎如何管理内存

1.内存生命周期

分配小内存空间,得到它的使用权

存储数据,可以反复进行操作

使用完毕释放当前小内存空间

2.释放内存

局部变量:函数执行完自动释放

对象:成为垃圾对象==>垃圾回收期回收

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值