【前端面试宝典】首发

写在前面

话题挑战赛第1期

    活动详情地址: 参赛话题:前端面试宝典 话题描述:欢迎各位加入话题创作得小伙伴,如果我没有猜错得话,我觉得你是应该同我一样是一位前端人。如今前端在IT事业中的占比越来越重,已经成为不可缺少的部分,前端技术也是层出不穷,各种技术类、技术框架也蜂拥而出,前端面试的难度也随之增加,如果我们拥有一套前端面试宝典。如果你是应聘者:你就可以从容的solo面试官,如果你是面试官:你就可以将应聘者拷问到骨子里! 总之我们大家一起将自己的面试经验以及学习到的知识点汇聚于此,形成一套体系的前端面试宝典。让读者无论是面试还是学习都能够有非常大的收获。就让我们携手共筑前端面试宝典吧!!! 创作模板:

题目一

什么是防抖和节流?有什么区别?如何实现?

`

答案

防抖:触发高频事件后n秒内函数只会执行一次,如果n秒内高频事件再次被触发,则重新计算时间

节流:高频事件触发,但在n秒内只会执行一次,所以节流会稀释函数的执行频率

题目二

模块化发展历程

答案

模块化主要是用来抽离公共代码,隔离作用域,避免变量冲突等。

IIFE:使用自执行函数来编写模块化,特点:在一个单独的函数作用域中执行代码,避免变量冲突。

(function(){return { data:[] }})()AMD:使用requireJS 来编写模块化,特点:依赖必须提前声明好。

define(‘./index.js’,function(code){ // code 就是index.js 返回的内容})CMD:使用seaJS 来编写模块化,特点:支持动态引入依赖文件。

define(function(require, exports, module) { var indexCode = require(‘./index.js’);})CommonJS:nodejs 中自带的模块化。

var fs = require(‘fs’);UMD:兼容AMD,CommonJS 模块化语法。

webpack(require.ensure):webpack 2.x 版本中的代码分割。

ES Modules:ES6 引入的模块化,支持import 来引入另一个 js 。

import a from ‘a’;

写在最后

话题挑战赛第1期

    活动详情地址:
经验分享 程序员 微信小程序 职场和发展