前端面试总结
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了前端面试总结,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2810字,纯文字阅读大概需要5分钟。
内容图文
![前端面试总结](/upload/InfoBanner/zyjiaocheng/1018/9e0fb61e19a64c489c4ed3a226e6409f.jpg)
1. 防抖和节流
什么是防抖和节流,他们的应用场景有哪些?
//防抖第一次立即执行
function debounceImmediate(f, wait){
let timer;
let flag = true;
return (...args) => {
clearTimeout(timer);
if (flag) {
f(...args);
flag = false;
}
timer = setTimeout(() => {
flag = true;
}, wait);
}
}
//防抖合并实现(通过传参判断是否需要第一次立即执行)
function debounceMerge(f, wait, isImmediate) {
let timer;
let flag = true;
return (...args) => {
clearTimeout(timer);
if (flag) {
flag = false;
isImmediate && f(...args);
}
timer = setTimeout(() => {
!isImmediate && f(...args);
flag = true;
}, wait);
}
}
//节流第一次立即执行
function throttleImmediate(f, wait) {
let timer;
let flag = true;
return (...args) => {
if (timer) return;
if (flag) {
f(...args);
flag = false;
timer = setTimeout(() => {
flag = true;
timer = null;
}, wait);
}
}
}
//节流合并实现(通过传参判断是否需要第一次立即执行)
function throttleMerge(f, wait, isImmediate) {
let timer;
let flag = true;
return (...args) => {
if (timer) return;
if (flag) {
isImmediate && f(...args);
flag = false;
timer = setTimeout(() => {
!isImmediate && f(...args);
flag = true;
timer = null;
}, wait);
}
}
}
2. HTTP缓存
彻底弄懂HTTP缓存机制及原理
3. 浏览器同源策略
浏览器同源政策及其规避方法
跨域资源共享 CORS 详解
4. 前端安全
前端安全 美团技术团队
5. HTTP 2.0有哪些特性
6. 原型、原型链
一张图搞定JS原型&原型链
7. 闭包
深入理解javascript原型和闭包系列
闭包的秘密
8. 作用域、作用域链
深入理解JavaScript作用域和作用域链
9. JS 继承方式
10. 深克隆、浅克隆对象
11. JS 对象的遍历方法
js遍历对象的几种方法
12. 实现一个Promise函数
13. 用 setTimeout 实现 setInterval
14. JS 事件循环机制
15. 八大排序
代码实现
时间复杂度
最好/最坏时间复杂度
空间复杂度
稳定性
16. 用 Promise 函数实现 Ajax 请求
const getJSON = function(url) {
const promise = new Promise(function(resolve, reject) {
const handler = function() {
if (this.readyState !== 4) {
return;
}
if (this.status === 200) {
resolve(this.response);
} else {
reject(new Error(this.statusText()));
}
};
const client = new XMLHttpRequest();
client.open('GET', 'url');
client.onreadystatechange = handler;
client.responseType = "json";
client.setRequestHeader("Accept", "application/json");
client.send();
});
return promise;
}
getJSON("/posts.json").then(function(json) {
console.log('Contents: ' + json);
}, function(error) {
console.error('出错了', error);
});
17. vue3 有哪些特性?
vue3 迁移指南
18. ES6 新增了哪些特性/内容?
ES6 入门教程
19. 你是怎么学习前端的?
20. 什么是“大前端” ?
21. Node.js 有了解过吗?
22. HTTP 和 HTTPS的区别?
23. SSL 和 TSL
24. CSS 水平、垂直居中怎么实现?
25. flex 布局
26. 浏览器从输入一个 url 到页面展示经过了什么?
27. 浏览器渲染过程?
28. BFC、IFC是什么?
29. 有用过 webpack 吗?
30. 离线存储的方式有哪些?
31. JS 数组、字符串有哪些方法和属性?
32. 怎么实现文件上传?
33. 前端性能优化方式有哪些?
34. vue 的双向绑定原理是什么?怎么实现?
35. vue 中父组件、子组件怎么通信?
内容总结
以上是互联网集市为您收集整理的前端面试总结全部内容,希望文章能够帮你解决前端面试总结所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。