美文网首页
内存图与JS世界(待补充)

内存图与JS世界(待补充)

作者: Marshall3572 | 来源:发表于2021-02-22 11:14 被阅读0次

stack区顺序存放,heap区随机存放
非对象(数字,字符串,布尔)都存在Stark,对象(数组,函数)都存在Heap。
=号总是把右边的东西复制到左边(不存在什么传值和传地址)复制的对象一改之前被复制的也改,因为他们都是一块内存。

Window

window变量和window对象是两个东西,window变量是一个容器,存放window对象的地址。window对象是heap里边的一坨数据。

window内存图 window的三个属性 window抽象内存图

JS三座大山(this,原型,AJAX)

JS三座大山---原型

prototype是干什么用的?
打印出来看看
console.dir(window.Object.prototype)

每一个对象都有一个隐藏属性,指向原型(对象),这个隐藏属性封装了toString等等,方便调用,不用每次创建对象时都重写toString这些。

这个隐藏属性叫proto
prototype和proto的区别?
都存着原型的地址,只不过prototype挂在函数上,proto挂在每个新生成的对象上。

JS 引擎的功能有

  1. 编译 JS 代码为字节码或者机器码
  2. 优化字节码或者机器码
  3. 执行字节码或者机器码
  4. 垃圾回收

Object.prototype 保存了一个对象的地址,这个对象包含了所有普通对象的共有属性,叫做对象的原型
Array.prototype 保存了一个对象的地址,这个对象包含了是所有数组的共有属性,叫做数组的原型
Function.prototype 保存了一个对象的地址,这个对象包含了是所有函数的共有属性,叫做函数的原型
每个对象都有一个隐藏属性,用来保存其原型的地址,这个隐藏属性的名字叫做 proto

相关文章

  • 内存图与JS世界(待补充)

    stack区顺序存放,heap区随机存放非对象(数字,字符串,布尔)都存在Stark,对象(数组,函数)都存在He...

  • 内存图与JS世界 ---笔记(一)

    一切运行在内存中 计算机开机过程 操作系统在C盘中,按下开机键,主板通电,开始读取固件,开机程序会将文件中的操作系...

  • 内存图与JS世界 ---笔记(二)

    JS引擎中的区域: 代码区: 比如 var a = 1 存放变量 a的区域 数据区:Stack区、Heap区 还有...

  • JS内存图

    画JS内存图可以有效的解决JS中的一些内存问题JS中内存分为2中:栈内存(Stack)跟堆内存(Heap)栈内存:...

  • 内存与JS世界

    打开chrome 开启一个主进程 主进程会开启一些辅助进程,比如GPU进程,网络服务进程 每打开一个tab页,就会...

  • JS内存图

  • js 内存图

    7.垃圾回收 参考教程饥人谷

  • JS内存图

    上篇文章说了js诞生,今天我们来说说js是存在哪里的,首先从浏览器的功能说起。 浏览器功能 浏览器功能主要有发起请...

  • JS内存图

    Get Started • 操作系统• 进程与线程• JS引擎• 瓜分内存• JS入门三座大山之原型 操作系统常识...

  • 2018-08-01 js栈与队列补充

    栈与队列之js(ts)手写(补充)

网友评论

      本文标题:内存图与JS世界(待补充)

      本文链接:https://www.haomeiwen.com/subject/wxjqfltx.html