JavaScript 学习笔记
文章平均质量分 73
我的JavaScript学习笔记,该笔记中的示例使用了es5/es6/es7的部分特性。
一起学习JS吧!
绿胡子大叔
这个作者很懒,什么都没留下…
展开
-
JS学习笔记 - Proxy & Reflect
JS学习笔记 - Proxy & ReflectProxy定义Proxy捕获器不变式可撤销代理this问题Reflect应用跟踪属性访问隐藏属性属性验证函数与构造函数参数验证Proxy实现观察者模式ProxyProxy 可以理解成,在目标对象之前架设一层“拦截”,外界对该对象的访问,都必须先通过这层拦截,因此提供了一种机制,可以对外界的访问进行过滤和改写定义ProxyES6提供了Proxy构造函数,用来生成Proxy实例var proxy = new Proxy(target,handle原创 2021-10-23 23:56:28 · 185 阅读 · 0 评论 -
JS学习笔记 - 深入理解浏览器和Node.js中的宏任务、微任务、事件循环
JS学习笔记 - 深入理解浏览器和Node中的宏任务、微任务、事件循环JavaScript是单线程的浏览器线程简介GUI渲染线程JS引擎线程定时器触发线程浏览器事件线程http请求线程宏任务和微任务宏任务和微任务有哪些宏任务微任务浏览器的事件循环浏览器的宏任务、微任务机制JavaScript是单线程的JavaScript是一个单线程的脚本语言,即JS的代码只能在一个进程中运行。也就是说,JS只能同时执行一个任务。但如果全部代码全是同步执行的,这会引发很严重的问题,比方说我们要从远端获取一些数据,难道要一原创 2021-10-11 00:11:29 · 229 阅读 · 0 评论 -
JS学习笔记 - localStorage和sessionStorage
JS学习笔记 - localStorage和sessionStorage简介Web Storage 和 cookie 的异同点相同不同生命周期不同存储大小限制不同作用域不同与服务器通信易用性Web Storage API添加键值对获取键值删除键值对清除所有键值对其他方法判断是否存在键获取localStorage中键值对数量获取 localStorage 的属性名称通过StorageEvent响应存储的变化简介HTML5 Web Storage提供了两种在客户端存储数据的新方法 localStorage原创 2021-09-07 10:59:16 · 570 阅读 · 0 评论 -
JS学习笔记 - this指向
JS学习笔记 - this指向默认绑定隐式绑定隐式丢失显式绑定new绑定严格模式默认绑定全局环境下this指向window函数独立调用时,函数内部this指向window被嵌套的函数独立调用时,this指向windowIIFE自执行函数表达式中,this指向window闭包中this指向window隐式绑定当函数作为对象中的方法时,this指向该方法的直接对象隐式丢失将函数复制别名将函数作为参数传递函数作为内置函数时settimeout(function(){ //this指原创 2021-08-17 22:38:50 · 99 阅读 · 0 评论 -
JS学习笔记 - 深拷贝
JS学习笔记 - 深拷贝function deepCopy(source,target){ for(let key in source){ if(source[key].hasOwnProperty(key)){ //只取非原型对象中的属性 if(source[key] && typeof source[key] === 'object'){ //判断该属性对应的值是是否为Array或object //注意:typeof new Array和typeof new原创 2021-07-29 19:33:53 · 98 阅读 · 0 评论 -
JS学习笔记 - Object
JavaScript Object 学习笔记JavaScript 对象创建模式对象字面量工厂模式构造函数模式拓展构造函数模式寄生构造函数模式稳妥构造函数模式原型模式组合模式动态原型模式JavaScript继承原型链继承借用构造函数继承组合继承寄生组合式继承Object的静态方法Object的实例方法属性描述对象JavaScript 对象创建模式对象字面量var obj = {}var o = new Object();缺点:创建过多重复代码,占用内存控件,代码过于冗杂工厂模式function原创 2021-07-29 18:40:04 · 155 阅读 · 0 评论 -
JS学习笔记 - Promise
JS学习笔记 - Promise一、概念Promise对象状态状态不变性二、使用使用Promise对象链式操作- Promise.prototype.then()Reject处理语法糖 - Promise.prototype.catch()Promise.all()Promise.race()Promise.allSettled()一、概念Promise对象ECMAScript 6 中提供了Promise对象,用来传递异步操作的消息,它代表了一个异步操作的最终完成或者失败。状态Promise对象代原创 2021-07-05 21:02:40 · 198 阅读 · 0 评论 -
JS学习笔记 - 数组遍历方法
JS数组高阶方法一、Array.prototype.forEach()示例代码通过索引修改原数组二、Array.prototype.map()示例代码三、Array.prototype.filter()示例代码四、Array.prototype.reduce()示例代码 - 累加示例代码 - 求最大值示例代码 - 数组去重五、Array.prototype.find()示例代码六、Array.prototype.some()示例代码七、Array.prototype.every()一、Array.prot原创 2021-06-20 15:14:33 · 200 阅读 · 0 评论