如何理解JavaScript构造函数中的this功能

 时间:2024-10-12 08:20:24

1、构造函数执行

如何理解JavaScript构造函数中的this功能

2、首先进行 变量提升(全局)只有函数Student

如何理解JavaScript构造函数中的this功能

3、创建新对象 new Student('VIC', 20)Step1: 首先像普通函数一样, 在栈内存里形成私有作用域, 然后进行形参赋值, 变量提升

如何理解JavaScript构造函数中的this功能

4、Step2: 在JS代码自上而下执行之前, 首先在当前形成的私有栈中创建一个对象创建一个堆内存, 怵臂勺沩暂时不存储任何的东西并且让函数中的执行主体(this), 指向新的堆内存, this ===创建的对象找一个步骤是构造函数执行特有的, 普通函数执行的时候没有;this的创建是浏览器默认执行的, 我们看不到

如何理解JavaScript构造函数中的this功能

5、Step3: 代码自上而下执行

如何理解JavaScript构造函数中的this功能
如何理解JavaScript构造函数中的this功能

6、Step4: 代码执行完成后, 把之前创建的堆内存地址返回浏览器默认进行的操作, 不需要手工来做构造函数执行独有的

如何理解JavaScript构造函数中的this功能

7、开始创建的对象 其实就是当前Student这个类的一个实例我们让this指向这个实例, 代码执行中的this.na罪焐芡拂me = 'VIC'等操作都是给这个实例设置'私有属性'最后浏览器会把默认创建的实例返回, 供外面接收

8、再次执行new Student时, 会创建新的内存空间, 形成新的实例实例是独立分开的

9、实例对象中, 并没有 属性n只有this.属性 = '值' 才和实例对象有关系变量n 是私有作用域中的一个私有变量而已, 和实例对象没有关系

如何理解JavaScript构造函数中的this功能
如何理解JavaScript构造函数中的this功能
  • qq微博怎么开通
  • dism++怎么备份系统?如何用dism++备份系统?
  • 电脑配置在哪里看??
  • 如何查看电脑设备的ui数值?
  • 饥荒人物分析之女武神分析
  • 热门搜索
    创卫手抄报内容 多彩的民族文化手抄报 手抄报图片大全简单 文明礼仪手抄报诗歌 手抄报排版 我爱足球手抄报 科技手抄报版面设计图 端午节的手抄报 简单 国防手抄报 关于地震的手抄报