js中new操作符的作用及原理
要知道new操作符的作用是什么,得先知道它干了什么事(原理):
- 它创建了一个新对象
- 它将构造函数的原型属性和方法挂载到新对象的__proto__(原型指针)上
- 他执行了构造函数并将构造函数的this指向了新对象
- 将这个新对象返回出来了
知道了这些后,那么就很明白了new操作符的作用,我们可以利用call或者apply来封装一个属于自己的new 函数:
//第一个参数为构造函数,后面为参数
function myNew() {//创建空对象var obj = {};//获取参数var [Fn, ...arg] = [...arguments]//将原型属性方法挂载到对象的指针(__proto__)obj.__proto__ = Fn.prototype;//执行构造函数Fn.apply(obj, arg)//返回新对象return obj}
这样子我们就完成了一个new操作符的全部过程,如果大家有空麻烦点个赞再走吧!!!
js中new操作符的作用及原理相关推荐
- JS中关键字in的作用
JS中关键字in的作用 in关键字可以用来检测某个属性是否存在某个对象中,对于对象的属性要用字符串指定属性的名称("属性名") // 举个栗子:console.log(" ...
- C++中虚析构函数的作用及原理
C++中虚析构函数的作用及原理 先测测你哟,上代码
- Spring中@AliasFor注解的作用及原理
本文基于Springboot 2.1.6.RELEASE 版本分析. 关于@AliasFor注解,曾提过的一个issue Explicit attribute overrides configured ...
- js中的innerHTML的作用
js中常常用到innerHTML,其作用就是获取到标签里面的内容,同时也可以为标签添加内容 <div><p id="text">hello world< ...
- 关于JS中变量提升的规则和原理的一点理解(一)
关于变量提升,以前在一些教程和书籍上都听到过,平时开发中也知道有这个规律,但是今天突然在一个公开课中听到时,第一反应时一脸懵逼,然后一百度,瞬间觉得好熟悉啊,差点被这个概念给唬住了,不信我给你 ...
- 关于js中delete 操作符的秘密(如何删除对象的属性,清空对象)
开发十年,就只剩下这套架构体系了! >>> 概念 再mdn中detele的概念如下. delete 操作符用于删除对象的某个属性:如果没有指向这个属性的引用,那它最终会被释放. ...
- C++中虚析构函数的作用及其原理分析
参考http://blog.csdn.net/xiamentingtao/article/details/55517203 C++中的虚析构函数到底什么时候有用的,什么作用呢. 一.虚析构函数的作用 ...
- CNN中的卷积的作用及原理通俗理解
文章目录 一.卷积有什么用? 二.卷积是怎么提取特征的? 一.卷积有什么用? 卷积作用是为了进行特征提取 因为输入的信息中可能只有一小部分是对我们解决问题有帮助的,这些信息比较关键,这时候只提取这部分 ...
- js中 replace(/\//g, '') 什么作用. 正则表达式
replace(/\//g, '') 的作用是把/替换成''. 用法如下: 比如:var aa= "adsdd/sdsd12/"; bb=aa.replace(/\//g, '') ...
最新文章
- animation与transition区别
- a标签缺少href 属性,鼠标经过不会出现手型
- 大数据 vr csdn_VR中的数据可视化如何革命化科学
- 重绘CButton控件
- OpenVZ,Xen,KVM等:虚拟化解决方案
- c# 调用cmd WaitForExit 死锁问题解决方案
- 浅析 C++智能指针和 enable_shared_from_this 机制
- hadoop搭建和指令
- Dubbo服务服务暴露之ProxyFactory Invoker
- j2me解决模拟器乱码
- dism 分割镜像_2019系统教程,如何拆分WIM镜像里面多余的子映像、控制体积-映像文件怎么打开...
- 【VR】虚拟现实软件开发工具与技术
- 2019年阿里最新java编程规范-在线版
- 高中信息怎样用计算机求和,高中信息技术excel数据求和课件.ppt
- [转载]探索J2ME:用GCF通信
- 2020还是AI最火?推荐几本深度学习的书籍帮你入门!
- CF755F PolandBall and Gifts
- 用手机打开exe文件
- HIP4082电机驱动电路详解
- win10右键卡顿原因_Win10 右键卡顿解决办法