js基础
Shencl_harsh
这个作者很懒,什么都没留下…
展开
-
js对象中this指向问题
// var a = { // name: 'xxx', // say(){ // console.log(this); // console.log(this.name); // } // } // var b = a.say // a.say();/* xxx */ // b();/* undefined */ // var name = 'shencl'/* window能访问到 */ // var a = { // name: 'xxx', // say:原创 2021-07-15 01:40:39 · 79 阅读 · 0 评论 -
sequence tasks
sequence tasks实现sequence tasks输出再每隔一秒依次输出 实现sequence tasks let tasks = [] const createTask = (value, delay) => { return () => { return new Promise((rel, rej) => { setTimeout(() => { console.log(value); rel() },原创 2021-06-11 01:22:13 · 83 阅读 · 0 评论 -
节流和防抖
节流和防抖学习记录 学习记录 // 防抖 const btn = document.getElementById('btn') // 异步任务 const fn = (event) => { return setTimeout(() => { console.log('btn clicked...', event.target); }, 500); } const debounce = (func) => { let timer; return (event) =原创 2021-05-23 09:50:06 · 81 阅读 · 0 评论 -
解决循环引用的深度克隆
解决循环引用的深度克隆说明:实现测试总结 说明: 记录一下学习过程。对数组和对象进行深度克隆,对于其他类型的数据,则没有进行相应处理。比如:Symbol,Date, RegExp,其实也应该拷贝为一个新的对象返回----通过new的方式。而Function类型,则只需要返回一个新的函数FunA,这个函数FunA里再调用当前函数即可。 实现 /* 能解决循环引用的深度克隆: */ function DeepClone (obj, cach = new Set()) { const type = Objec原创 2021-05-13 00:05:17 · 200 阅读 · 0 评论