JS如何手写new(一看就懂)
如以下构造函数,使用new关键字:
function One(name, age) {this.name = name;this.age = age;
}
let a = new One();
console.log(a);
手写new,分四步骤,直接贴代码:
//Fun为构造函数, args表示传参
function myNew(Fun, ...args) {// 1.在内存中创建一个新对象let obj = {};// 2.把新对象的原型指针指向构造函数的原型属性obj.__proto__ = Fun.prototype;// 3.改变this指向,并且执行构造函数内部的代码(传参)let res = Fun.apply(obj, args);// 4.判断函数执行结果的类型if (res instanceof Object) {return res;} else {return obj;}
}let obj = myNew(One, "XiaoMing", "18");
console.log("newObj:", obj);
JS如何手写new(一看就懂)相关推荐
- JS的手写TRIM函数
JS的手写TRIM函数 转载于:https://www.cnblogs.com/vibratea/archive/2009/07/24/1530109.html
- vue+js纯手写日历(包含农历,节假日)
vue+js纯手写日历(包含农历,节假日) 使用的js 地址 dataChange.js 插件使用了elementui //完整代码 <template><div><di ...
- 纯JS+CSS手写日历
介绍 今天带来一个纯JS+css手写的日历, 一开始先显示当前日期,比如下方25日就是当前日期会有较深蓝色背景色,鼠标指着的日期是下方图片14日的淡蓝色背景色 上面显示日期,可左右选择上个月或者下个月 ...
- 【JS 纯手写轮播图代码】
轮播图实现 首先需要在同级目录下创建img文件夹,用以储存你需要轮播的图片,注意设置好图片的宽度,以免出现空白区域.然后就可以愉快地实现轮播功能啦~ // An highlighted block & ...
- 风尚云网面试题系列—JS高频手写代码题
目录 实现 Promise 实现一个 call 函数 实现一个 apply 函数 实现一个 bind 函数 浅拷贝.深拷贝的实现 实现一个防抖函数 实现一个节流函数 柯里化函数的实现 Object.c ...
- 原生拖拽太拉跨了,纯JS自己手写一个拖拽效果,纵享丝滑
前言 提到元素拖拽,通常都会先想到用 HTML5 的拖拽放置 (Drag 和 Drop) 来实现,它提供了一套完整的事件机制,看起来似乎是首选的解决方案,但实际却不是那么美好,主要是它的样式太过简陋, ...
- 【JavaScript】JS高频手写汇总
前言 基本上面试的时候,经常会遇到手撕XXX之类的问题,这次准备梳理总结一遍,巩固我们原生JS基础的同时,下次想复习面试手撕题的时候,找起来方便,也节省时间. 实现一个事件委托(易错) 事件委托这里就 ...
- js+jquery手写弹出提示框
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- 【js实现手写签名板】canvas
项目多个功能模块都用到签名,所以进行了封装,需要用到的签名的地方,只需要调用一下封好的signature函数,即可返回保存的签名照片(格式:base64,也可自行修改) <!-- 项目的html ...
最新文章
- json_encode时中文编码转正常状态
- tf.keras.losses.SparseCategoricalCrossentropy() 稀疏交叉熵 损失函数 示例
- jQuery是否可以获取与元素关联的所有CSS样式?
- POSTMAN 数据关联
- Ubuntu 设置程序开机启动(以指定用户身份)
- 如何发现 GitHub 上那些有趣好玩的项目?
- 近期期刊制作组的工作计划
- [POJ2155] Matrix(二维线段树,树套树)
- GC算法 垃圾收集器
- pycharm Debug问题
- 在python中类型属于对象变量是没有类型的_如何理解python对象有类型,变量无类型...
- MFC:ListControl用法
- IO子系统的层次结构
- 《HTML 5与CSS 3 权威指南(第3版·上册)》——第1章 Web时代的变迁
- 错误使用 eig 输入矩阵包含 nan 或 inf_特斯拉AI主管提醒你神经网络的几大常见错误...
- HTTP方法的幂等性
- java导出csv/excel工具类
- 基于NFC的毕业纪念卡片
- 大数据可视化(七)复杂数据可视化
- 大数据应用案例,告诉你最真实的大数据故事