《前端面试指北》:JS内存管理

之前就想总结,拖拖拖,拖到今天写深拷贝时才整理JS内存模型JS引擎将内存空间分为两块:堆(heap)与栈(stack)JS中的原始数据类型值通常都存储在栈中(Number String Null Undefined Boolean Symbol)而引用类型的数据都被存储在堆中(Object)当…

2020年11月18日 · 1 分钟

《前端面试指北》:原生重写

instanceof对于A.instanceof(B),它可以判断A的原型链上是否有B的原型// left的原型链上有right.prototype function instance_of(left, right) { // 父类的原型对象 let rightProto = righ…

2020年11月17日 · 3 分钟

《前端面试指北》:class A extends B{}过程

工具准备:Babel一直只是不断看到大家说extends过程是语法糖,背后还是原型链继承,所以其中到底封装了什么?首先祭出神器Babel,它可以把ES6+的JS代码转为向后兼容的旧版本实现准备好下面的ES6类继承代码,在babel网站上转换class B{ constructor(nam…

2020年11月16日 · 1 分钟

《前端面试指北》:问题收录

函数、类、对象??昨天写继承,发现自己的写的ES6类执行后原型上没有方法,所有方法都在实例上??当时的部分代码如下class Animal { constructor() { this.name = “animal”; this.sex = “male”; } sl…

2020年11月16日 · 1 分钟

《前端面试指北》:浏览器渲染 & 前端存储

浏览器现代浏览器通常由7部分构成:用户界面 : 地址栏、前进/后退按钮、书签菜单等。除浏览器主窗口显示的页面外,其他各个部分都属于UI。浏览器引擎 : 在用户界面和渲染引擎之间传送指令。渲染引擎 :负责显示请求的内容。如果请求的内容是 HTML,它就负责解析 HTML 和 CSS 内容,并将解…

2020年11月15日 · 2 分钟

《前端面试指北》:Event Loop详解

红宝书异步部分对于一些更底层的异步机制没有详细解释,其中最重要的就是事件循环,整合总结在这1. 同步&异步这里不深入同步异步内容,只是给出最简单的说明:同步(sync)即一个步骤接一个步骤完成:A()执行-A()结束-B()执行,如果A()不结束就会一直阻塞下去异步(async)与同步相对,无…

2020年11月14日 · 2 分钟

《前端面试指北》:JS运行机制

总结以下内容是因为红宝书多次提出了上下文和执行栈概念,为方便后续学习,先整理一遍,中间参考的资料链接都会放在最后1. 编译执行JavaScript作为一门解释性语言,每次执行程序时,解释器都需要边编译边执行,常见的v8引擎就是一个解释器。参考我的编译原理笔记阅读体验更佳此处为语雀文档,点击链接…

2020年11月6日 · 2 分钟

《前端面试指北》:JS继承

红宝书第八章写的真的很不错,第四版更新了ES6的继承,这里总结下✍ES5在ES5中没有正式的class,所有的类都是用于创建特定类型对象的构造函数,同时有以下事实JS中每个函数都具有一个prototype属性,该属性是一个指向函数原型对象的引用原型对象会获得constructor属性,该属性是…

2020年11月1日 · 3 分钟