代码视界

Hanpeng Chen的个人博客

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

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

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

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

【面试真题系列】Vue中的v-if和v-show有什么区别?

在回答这个问题前,我们先来看下Vue文档中对这两个指令的说明: v-if:用于条件性地渲染一块内容。这块内容只会在指令的表达式返回truthy值的时候被渲染。 v-show:用于根据条件展示元素的指令。 v-if和v-show的共...

聊一聊JavaScript类型判断的四种方法

前言在web开发中,我们经常碰到需要判断数据是数字还是字符串,判断是数组还是对象的场景,接下来我们一起来看看JavaScript中都有哪些方法可以判断数据类型。 欢迎关注我的微信公众号:前端极客技术(FrontGeek) type...

聊一聊浏览器本地存储

前言作为一名前端工程师,我们每天都在跟浏览器打交道,浏览器的本地存储更是经常用到。今天我们就一起来聊一聊浏览器的本地存储。 浏览器的本地存储主要分为:Cookie、 WebStorage、 IndexedDB。其中WebStorage...

前端性能指标:白屏和首屏时间的计算

前言页面性能优化是前端开发中一个重要的环节,而评判前端性能的优劣有两个比较经常听说的指标:白屏时间和首屏时间。 接下来我们一起来看看什么是白屏时间和首屏时间,如何去计算。 什么是白屏和首屏时间白屏时间(FP)白屏时间(First Pa...

一文彻底掌握HTTP缓存

缓存,作为性能优化的最有效方法之一,在面试过程中经常被问到,作为一名开发人员,缓存是必须掌握的一块知识。 浏览器缓存机制有四个方面:Memory Cache、Service Worker Cache、HTTP Cache、Push C...

一文掌握9大跨域解决方案

什么是跨域跨域是指一个域下的文档或脚本试图去请求另一个域下的资源。通常我们讲的跨域,是由浏览器同源策略限制的一类请求场景。 同源策略同源指的是两个URL的协议、域名和端口三者都相同,即使两个不同 的域名指向相同的IP地址,也非同源。 ...

CSS面试题:什么是BFC?BFC有什么用?

BFC是之前前端面试中经常问到一个问题,这篇文章我们一起来学习BFC。 什么是BFCBFC(Block Formatting Context):快格式化上下文,是web页面的可视化CSS渲染的一部分,是块盒子的布局过程发生的区域,也是...

JavaScript数组乱序

前言对数组进行排序对我们来说很容易就能够实现,但是你有考虑过如何对一个有序的数组实现乱序,即随机排序吗? 数组乱序在实际开发过程中是可能碰到的,下面我们一起看看如何实现数组乱序。 sort + Math.random我们一开始可能会想...