摘要:
浏览器工作原理 浏览器架构 单进程,多线程 多进程,多线程,进程间通过IPC(Inter Process Communication)通信 谷歌多进程架构 各进程的分工 浏览器进程 UI线程,网络线程,存储线程... 负责浏览器的“Chrome”部分, 包括导航栏,书签, 前进和后退按钮。同时这个进 阅读全文
摘要:
#自定义代码 这里是我自定义的Promise,如果想看原版,可以跳过最后有符合PromiseA+规范的源码 class 承诺 { constructor(处理器函数) { //1. 处理器函数是在_new 承诺(处理器函数)_的时候当做参数传入到构造函数里的,构造函数里会执行这个处理器函数. let 阅读全文
摘要:
let const 原来的var声明标识符:可以重复声明,编译不报错. let,const声明标识符:不能重复声明,再声明编译报错. var声明的标识符作用域是当前函数,let和const是当前{块}. const声明的标识符不能再被赋值,也就是常量. 解构赋值 ES6 允许按照一定模式,从数组和对 阅读全文
摘要:
原型和原型链 看图说话: 1、对象内部具有[[Prototype]]属性,该属性不可直接访问,浏览器通过__proto__(两条‘_’)可以让用户读写该内部属性,最重要的是,该属性指向创建本对象的原型对象。 2、每个原型对象内部都有一个独有属性constructor,指向该原型对象的构造函数。 3、 阅读全文
摘要:
this在函数调用时创建,一般的对象没有this,全局window可以理解为一个函数,他有一个全局this JavaScript 语言之所以有this的设计,跟内存里面的数据结构有关系。 函数里this的指向由函数的调用方式决定 不服就干,几个例子来说明函数的调用方式 var 变量 = 123 va 阅读全文
摘要:
分析下面两段代码 console.log(num)//undefined var num = 10 f()//可以执行 //f2()不可以执行 console.log(f)//function console.log(f2)//undefined function f(){ console.log( 阅读全文