代码视界

Hanpeng Chen的个人博客

面试经常提到的重排和重绘,你真的了解吗?

上一篇文章 「浏览器渲染流程」你知道HTML、CSS、JS文件在浏览器中是如何转化成页面的吗? 学习了浏览器的页面渲染流程,在文章的最后我们提到了两个和渲染流程有关的概念:重排和重绘。理解这两个概念对我们做Web性能优化会有很大的帮助...

一起搞清楚JS中的new到底做了什么,并模拟实现一个new

作者:Hanpeng_Chen 公众号:前端极客技术 new关键字对于前端开发者来说是比较常见的操作,在互联网大厂的面试中,有时候会要求手写实现new。接下来我们一起看看new到底做了什么?如何模拟实现? new原理介绍new概念...

一起手写实现符合Promise/A+规范的Promise源码

作者:Hanpeng_Chen 公众号:前端极客技术 Promise是JavaScript中异步编程的核心内容,也是前端面试的高频问题。关于Promise的基本用法这里不再详细介绍,接下来我们一起来实现一个符合 Promise/A...

「高频面试题」浏览器从输入url到页面展示中间发生了什么

“在浏览器中,从输入URL到页面展示,中间发生了什么?”这是一道经典的高频面试题,其中涉及了网络、操作系统、web等一系列的知识。接下来我们一起来看看要怎么回答这道题。 整个过程可以大致描述为: URL解析用户输入URL,浏览器会根据...

「面试必备」一文吃透JavaScript继承

继承在各种编程语言中都充当着至关重要的角色,在JavaScript中也被经常用在前端工程基础库的底层搭建上,是JavaScript需要重点学习的一块内容。 继承可以使得子类具有父类的各种方法和属性。ES6中推出了class这个概念,方...

这一次彻底掌握JavaScript的深浅拷贝

关于拷贝这个问题,也是前端面试中的一道经典面试题,我们在日常开发中也常碰到需要用到深拷贝或浅拷贝的场景。接下来我们通过这篇文章,彻底掌握JavaScript的深浅拷贝。 数据类型在开始讲深浅拷贝之前,我们要先知道JavaScript的...

【面试题】Vue2 中如何检测数组变化

为什么要对数组进行单独处理我们都知道在Vue2中,对响应式处理利用的是 Object.defineProperty 对数据进行拦截。如果数据是数组,我们还是用defineProperty的方法进行拦截的话,需要对数组每一层每一位都进行...

【面试题】说一说你对Vue2 响应式原理的理解?

前言虽然Vue3已经正式发布,但目前Vue2还是开发主力,所以近期面试Vue2相关内容还是比较常见的,今天我们一起来看看下面这个问题: 面试题 面试官:说一说你对Vue2 响应式原理的理解? 无法让面试官满意的回答碰到面试官问你这个...