
Crystalの前端面试整理
Crystal的前端面试整理
CrystalAngelLee
GitHub:https://github.com/CrystalAngelLee
LinkdIn:https://www.linkedin.com/in/%E5%98%89%E8%90%B1-%E6%9D%8E-b56531149/
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
webpack与grunt、gulp 的不同
三者都是前端构建工具,grunt/gulp 在早期比较流行,现在webpack相对来说比较主流,不过轻量化的任务还是会使用 gulp 处理,比如单独打包CSS文件等 grunt 和 gulp 是基于任务和流(Task.Stream) 的。类似JQuery,找到一个或一类文件,对其做一系列链式操作,更新流上的数据,整条链式操作构成了一个任务,多个任务就构成了整个web的构建流程 webpack是基于入口的。webpack会自动递归解析入口所需要加载的所有资源文件,然后用不同的Loader来处理不同的文件,用P原创 2021-03-18 15:37:32 · 272 阅读 · 0 评论 -
Vue: 点击按钮的时候动态给 data 增加的成员是否是响应式数据
Q: 点击按钮的时候动态给 data 增加的成员是否是响应式数据?如果不是的话,如何把新增成员设置成响应式数据,它的内部原理是什么 let vm = new Vue({ el: '#el' data: { o: 'object', dog: {} }, method: { clickHandler () { // 该 name 属性是否是响应式的 this.dog.name = 'Trump' } } }) A: 不是响应式数据 Vue中data成员是在Vue初始化的原创 2021-03-04 15:59:57 · 631 阅读 · 1 评论 -
谈谈你是如何理解 JS 异步编程的,EventLoop、消息队列都是做什么的,什么是宏任务,什么是微任务?
JS 异步编程 JS 是单线程模式工作的(一个时间内只能做一件事),当有较多任务的情况下,任务需要依次排队等待完成,如果遇到某一个或几个任务很耗时的情况就会给用户一种假死的状态,极大地降低了体验效果。为了解决这个问题,提出了异步的工作模式,即不会等待任务的执行,开启任务后立即往后执行下一个任务,耗时任务结束后会自动调用执行传入的回调函数 EventLoop 单线程意味着所有的任务必须排队依次执行,JS 的任务分为同步任务和异步任务,同步任务会进入主线程中依次执行,遇到异步任务则会将其放入消息队列中等..原创 2021-03-03 10:05:32 · 206 阅读 · 0 评论 -
Loader 和 Plugin 有哪些不同?请描述一下开发 Loader 和 Plugin 的思路
什么是loader loader是文件加载器,负责资源文件从输入到输出的转换(加载资源文件,并对文件进行处理【例如编译、压缩等】, 然后打包到指定文件中); 对于同一个资源可以依次使用多个loader,loader执行顺序类似出栈的方式,最后一个loader最先执行,第一个loader最后执行(代码中表现为:从下至上执行); 第一个执行loader接收源文件内容作为参数,其他loader依次接收上一个loader 处理过的内容作为参数 什么是plugin plugin类似于一个扩展器,增强了webp..原创 2021-02-26 10:36:53 · 690 阅读 · 0 评论 -
Webpack 的构建流程主要有哪些环节?如果可以请尽可能详尽的描述 Webpack 打包的整个过程
1. Webpack 的构建流程主要有哪些环节?如果可以请尽可能详尽的描述 Webpack 打包的整个过程 2. Loader 和 Plugin 有哪些不同?请描述一下开发 Loader 和 Plugin 的思路。 什么是loader loader是文件加载器,负责资源文件从输入到输出的转换(加载资源文件,并对文件进行处理【例如编译、压缩等】, 然后打包到指定文件中); 对于同一个资源可以依次使用多个loader,loader执行顺序类似出栈的方式,最后一个loader最先执行,第一个loader最后执原创 2021-02-25 10:50:04 · 498 阅读 · 0 评论 -
前端面试部分-20201120试题
写一个 mySetInterVal(fn, a, b),每次间隔 a,a+b,a+2b 的时间,然后写一个 myClear,停止上面的 mySetInterVal 介绍chrome 浏览器的几个版本 https://juejin.cn/post/6847902225423925255原创 2020-11-20 20:55:43 · 234 阅读 · 1 评论 -
前端面试部分--20200624试题
一、基础问答部分 请简述对AJAX的理解 请理解如下写法的区别:function TestProp(){ this.testName = 10 } TestProp.prototype.testName = 10 http 状态码有哪些,分别代表了什么意思 知道http持久化和管线化吗?请说明 谈谈你对SEO的理解 二、手写部分 请写出CSS盒模型尺寸计算公式:元素总宽度= 请写出JavaScript中,使用typof运算符能得到的值有: 如果需要对Array对象增加一个方法insertAt(/原创 2020-06-24 11:38:13 · 225 阅读 · 0 评论 -
前端面试部分--20200616试题
一、基础问答部分 请描述一下https的原理以及与http的区别 position 有哪些属性 img 标签间距问题的原理以及如何解决 typeof 的原理是什么,与 instanceOf 、 Object.prototype.toString.call() 的区别 0.1 + 0.2 === 0.3 吗?为什么? 二、手写部分 6. 实现一个算法,来完成字符串相加,比如 “111” + ”2222“ = ”2333“ 7. 三、框架部分 提供一个 VDOM 对象,写一个 render 函数来让他变成原创 2020-06-16 17:33:38 · 318 阅读 · 0 评论 -
前端面试部分--20200610试题
一、基础问答部分 描述一下计算机网络的七层 TCP和UDP的区别是什么 请描述一下对闭包的理解 箭头函数与function的区别有哪些 new 一个对象过程发生了什么 二、手写部分 手写一个Promise函数 手写一个快速排序 使用解构,实现两个变量的值的交换 怎么添加、移除、复制、创建、和查找节点 实现一个函数clone 可以对Javascript中的五种主要数据类型(Number、string、Object、Array、Boolean)进行复制 三、框架部分 请说一下react diff 原理原创 2020-06-10 17:46:22 · 134 阅读 · 0 评论 -
前端面试部分--20200412试题
一、基础问答部分【15】 请描述对this的理解【3】 谈谈对事件循环的理解【3】 Doctype 有啥作用?标准模式与兼容模式有啥区别?【2】 页面导入样式时,使用link 和 @import 有什么区别?【1】 display有哪些值?请说明他们的作用【2】 display:inline-block 什么时候会显示缝隙 【1】 什么是CSS预处理器/后处理器?【3】...原创 2020-04-12 17:07:21 · 363 阅读 · 0 评论