内存,变量和数据之间的的三角恋

数据:

  • 数据就是存放在内存中的东西,本质上是01010…
  • 数据的特点:可传递,可运算

内存:

  • 内存条通电后产生的可存储的数据空间 (临时的)

  • 内存的产生的死亡:内存条(电路板)----通电----产生内存空间----存储数据----处理数据----断电----内存空间和数据消失

  • 一块小内存的2个数据 内部存储的数据 地址值

  • 内存分裂

    1. 栈:全局变量/局部变量
    2. 堆:对象

变量:

  • 可变换的量,由变量名和变量值组成
  • 每个变量都对应一小块内存,变量名用来查找对应的内存,变量值就是内存中保存的数据

严格区分变量类型和数据类型?

  • 数据类型:基本类型和对象类型

  • 变量的类型(变量内存值的类型):

  1. 基本类型:保存的就是基本类型的数据
  2. 引用类型:保存的是地址值

三者之间的关系

  • 内存用来存储数据的空间,而变量用来找内存,变量名就是内存的标识,变量值就是数据

具体可以看图在这里插入图片描述

👀客官这里看👀

问题1: let a=xxx a内存中到底保存的是什么?
1. xxx是基本类型,保存的就是这个数据
2. xxx是对象,保存的就是对象的地址值
3. xxx是变量,保存的是xxx的内存内容(可能是基本类型,可能是地址值)

问题2:在js调用函数传递变量参数是,是值传递还是引用传递?—值传递

**问题3:console.log({name: "小凡"} === {name: "小凡"})输出true还是false**👍

**问题4:看下面代码:问最后输出的18还是20?**👍

  	let obj = {age: 18}

    function f2(obj) {
        obj = {age: 20}
    }
    f2(obj)
    console.log(obj.age)//18?20

问题5:释放内存

  • 局部变量:函数执行完自动释放
  • 对象:成为垃圾对象==>垃圾回收器回收

在这里插入图片描述
注意b是自动释放,b所指向的对象是后面的某个时刻由垃圾回收器回收的

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值