javascript各种手写实现
fltenwall
数据科学与人工智能硕士
展开
-
javascript实现函数防抖与节流
github地址:JavaScript各种手写防抖:在事件被触发n秒后再执行回调,如果在这n秒内又被触发,则重新计时function debounce(fn, delay) { var timer; return function () { var _this = this; // 保存函数的this指向 var args = arguments; //每次触发事件时都取消之前的延时调用方法 if (timer) {原创 2020-05-27 09:28:49 · 281 阅读 · 0 评论 -
手写Jsonp
github地址:JavaScript各种手写jsonp /** * jsonp获取请求数据 * @param {object}options */ function jsonp(options) { // console.log(options); // 1. 产生不同的函数名(函数名随机) let callBackName = 'itLike' + Math.random().toString().subst原创 2020-05-27 09:26:55 · 481 阅读 · 2 评论 -
js完美深拷贝
github地址:JavaScript各种手写实现//判断是否为复杂数据类型const isComplexDataType = obj => (typeof obj === 'object' || typeof obj === 'function') && (obj !== null);//利用 WeekMap() 的键对自己所引用对象的引用都是弱引用的特性,在没有其他引用和该键引用同一对象的情况下,这个对象将会被垃圾回收//为了解决循环引用的问题,设置一个哈希表存储已拷贝过原创 2020-05-27 09:20:42 · 858 阅读 · 0 评论