欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

new 实例化对象是啥意思_new 关键字、实现一个new

发布时间:2025/3/15 编程问答 64 豆豆
生活随笔 收集整理的这篇文章主要介绍了 new 实例化对象是啥意思_new 关键字、实现一个new 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

new 运算符创建一个用户定义的对象类型的实例或具有构造函数的内置对象的实例。 ——(来自于MDN)

 new 做了什么?

  • 1、访问到构造函数里的属性
  • 2、访问到原型里的属性

思路

  • 新生成了一个对象
  • 链接到原型
  • 绑定 this
  • 返回新对象
  • 在调用new的过程中会发生以上四件事情,我们也可以试着来自己实现一个new

    看看下面的执行结果就能明白

    let Con = [].shift.call(arguments)

    这里补充一个小贴士:

    JS运行的时候,会有栈内存(stack)和堆内存(heap),当我们用new实例化一个类的时候,这个new出来的对象就保存在heap里面,而这个对象的引用则存储在stack里。程序通过stack里的引用找到这个对象。例如var a = [1,2,3];,a是存储在stack里的引用,heap里存储着内容为[1,2,3]的Array对象。

    参考

    JS | InterviewMap​yuchengkai.cn【进阶3-5期】深度解析 new 原理及模拟实现 · Issue #24 · yygmind/blog​github.com

    总结

    以上是生活随笔为你收集整理的new 实例化对象是啥意思_new 关键字、实现一个new的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。