随笔分类 -  JavaScript高级

高级JavaScript知识点总结
摘要:CryptoJS 文档 const key = CryptoJS.enc.Utf8.parse("4c43c365a4ac05b91eb5fa95"); // key const iv = CryptoJS.enc.Utf8.parse("4c43c365"); // iv // 直接使用 key 阅读全文
posted @ 2020-03-08 14:34 winyh 阅读(5705) 评论(2) 推荐(0) 编辑
摘要:React 源码分析 阅读全文
posted @ 2019-11-19 17:37 winyh 阅读(135) 评论(0) 推荐(0) 编辑
摘要:主要记录性能优化方向的知识点 参考链接: https://github.com/fouber/blog/issues/3 https://github.com/fouber/blog/issues/6 阅读全文
posted @ 2019-07-07 10:30 winyh 阅读(182) 评论(0) 推荐(0) 编辑
摘要:《Javascript 设计模式与开发实践》系列的学习笔记 阅读全文
posted @ 2019-07-07 10:08 winyh 阅读(170) 评论(0) 推荐(0) 编辑
摘要:this的指向在函数定义的时候是确定不了的,只有函数执行的时候才能确定,this最终指向调用它的对象。 1.函数调用模式: 当一个函数并非一个对象的属性时,那么它就是被当做函数来调用的。在此种模式下,this被绑定为全局对象,在浏览器环境下就是window对象 2.方法调用模式: 当函数被保存为一个 阅读全文
posted @ 2019-07-05 16:25 winyh 阅读(153) 评论(0) 推荐(0) 编辑
摘要:浏览器缓存 参考链接:https://mp.weixin.qq.com/s/WGoDFm9ovHkgoXz4rWewYQ 阅读全文
posted @ 2019-07-05 08:49 winyh 阅读(133) 评论(0) 推荐(0) 编辑
摘要:1.谷歌浏览器调试技巧 2.断点调试技巧 参考链接:https://mp.weixin.qq.com/s/Xluzero07LQxPzIUnXls4w 阅读全文
posted @ 2019-07-04 17:16 winyh 阅读(441) 评论(0) 推荐(0) 编辑
摘要:JavaScript 栈内存,堆内存 阅读全文
posted @ 2019-07-04 17:01 winyh 阅读(165) 评论(0) 推荐(0) 编辑
摘要:当项目越来越大时,会遇到一些问题: 1.命名冲突 2.文件依赖 所有就有了javascript模块化开发概念。 模块化开发的演变: 1.函数块:最开始用全局函数将代码块包括在函数体内,然后把很多函数写在一个js文件,然后引入js文件,这种方式会导致:全局变量污染和命令冲突,模块之间的关系也不明确。 阅读全文
posted @ 2019-07-04 16:58 winyh 阅读(2191) 评论(0) 推荐(0) 编辑
摘要:以上两种方式是函数自执行的常见方式 JavaScript 立即(自)执行函数: javascript 里没有私有作用域的概念,在大型项目里,函数或变量很容易被不小心覆盖掉,依据JS里作用域链(函数外部不能访问函数内部的变量,函数内部的子函数可以访问父级作用域的所有变量)的特性。用匿名函数作为一个“容 阅读全文
posted @ 2019-07-04 16:57 winyh 阅读(1141) 评论(0) 推荐(1) 编辑
摘要:ES6 语法 阅读全文
posted @ 2019-07-04 16:53 winyh 阅读(141) 评论(0) 推荐(0) 编辑
摘要:JavaScript Event事件循环机制 JS是单线程的,浏览器只分配一个主线程给JS。一次只能执行一个任务,当前任务执行完后在可以执行下一个任务。任务多时,就会形成任务队列排队等待执行。但是非常耗时间的异步操作,比如网络请求,浏览器会用另外的线程去处理,处理的结果通过回调函数处理,回调函数会被 阅读全文
posted @ 2019-07-04 16:42 winyh 阅读(188) 评论(0) 推荐(0) 编辑
摘要:JavaScript语言本身是单线程的,所以它自身不可能是异步。所谓单线程,就必然意味着:所有任务需要排队,前一个任务结束,才会执行后一个任务。 但js的宿主环境(比如浏览器,Node)是多线程的。宿主环境通过【事件驱动】机制使得js具备了异步的属性。浏览器只分配给js一个主线程,用来执行任务(函数 阅读全文
posted @ 2019-07-04 16:41 winyh 阅读(159) 评论(0) 推荐(0) 编辑
摘要:理解JavaScript 闭包之前需要先理解JavaScript变量的作用域。 在ES6之前,根据变量的作用域(全局作用域和函数作用域),变量分为:全局变量和局部变量 在ES6之之后,let 引入了块级作用域 Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。 另一方面,在函数 阅读全文
posted @ 2019-07-04 13:37 winyh 阅读(112) 评论(0) 推荐(0) 编辑
摘要:这篇文章会整理 JavaScript 继承机制设计思想,也可以解释一些,原型相关属性的由来。 JavaScript语言没有 类(class)的概念(面向对象),也没有实例(instance)。用原型链模式(prototype chain)模式实现继承。 JavaScript里面所有的数据类型都是对象 阅读全文
posted @ 2019-07-04 11:57 winyh 阅读(217) 评论(0) 推荐(0) 编辑
摘要:① __proto__ 和 constructor 属性是 对象 所独有的。 ② prototype 属性是 函数 所独有的。 ** JS里函数也是引用类型的对象,所以函数也有 __proto__ 和 constructor 属性 __proto__ 和 原型链 (1)__proto__ 属性都是由 阅读全文
posted @ 2019-07-04 09:07 winyh 阅读(353) 评论(0) 推荐(0) 编辑
摘要:type:"Program" //顶级对象类型 type:"Identifier" // 标识符type:"FuncationDeclaration" // 函数申明type:"Literal" // 字面量generator: false // 是不是generator函数expression: false, // 是不是一个表达式 async: false // 是不是一个异步函数row:... 阅读全文
posted @ 2019-06-26 15:08 winyh 阅读(290) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示