前端
小孩不能抽烟
这个作者很懒,什么都没留下…
展开
-
【JavaScript】手写apply
Function.prototype.apply = function(context, rest) { if(!context) { context = typeof window === 'undefined' ? global : window } context.fn = this let result; if(rest === undefined || rest === null) { result = context.fn(rest) } els..转载 2022-01-19 22:27:53 · 72 阅读 · 0 评论 -
【JavaScript】手写call
Function.prototype.call = function(context) { // 判断传入的context是不是null或者undefined,如果是的话,将context设置为全局对象 if(!context) { context = typeof window === 'undefined' ? global : window; } context.fn = this// this是指向当前函数 let res = [...arguments].sl.转载 2022-01-19 22:11:33 · 1013 阅读 · 1 评论 -
【JavaScript】手写节流
function throttle3(func, wait) { var args, context; var previous = 0; var timeout; var latter = function () { previous = +new Date() timeout = null func.apply(context, args) } var throttled = function () { var now = +new Dat.转载 2022-01-18 23:04:57 · 114 阅读 · 0 评论 -
【JavaScript】手写防抖
function debounce(func, wait, immediate) { // 增加立即执行参数 immediate // 增加返回值,当且只有在immediate为true的时候才会有返回值 var timeout, result; var debounced = function() { // 将this指向正确的对象 var context = this; // 接受event对象 var args = arguments; if(.转载 2022-01-17 22:37:01 · 184 阅读 · 0 评论 -
【JavaScript】 -- 闭包
MDN对闭包的定义为:闭包是指呢些能够访问自由变量的函数自由变量的定义是:自由变量是指在函数中使用的,但既不是函数参数也不是函数局部变量的变量。闭包大概就是:闭包 = 函数 + 函数能够访问的自由变量。闭包的最常见的形式是,在一个函数内部创建一个新的函数,这个函数能够访问外部函数的变量。闭包的作用:封装私有变量模仿块级作用域实现js的模块化ECMAScript中,闭包指...原创 2021-12-29 22:47:09 · 342 阅读 · 0 评论 -
【JavaScript】手写new
function _new(/* 构造函数 */ constructor, /* 构造函数参数 */ params) { // 将 arguments 对象转为数组 var args = [].slice.call(arguments); // 取出构造函数 var constructor = args.shift(); // 创建一个空对象,继承构造函数的 prototype 属性 var context = Object.create(constructor.prototype); /.原创 2021-12-23 15:29:21 · 295 阅读 · 0 评论