2024最新前端面试八股文【基础篇293题】

news2024/11/18 0:25:59

⼀、HTML、HTTP、web综合问题

1 前端需要注意哪些SEO

2 <img> title alt 有什么区别

3 HTTP的⼏种请求⽅法⽤途

4 从浏览器地址栏输⼊url到显示⻚⾯的步骤

5 如何进⾏⽹站性能优化

6 HTTP状态码及其含义

7 语义化的理解

8 介绍⼀下你对浏览器内核的理解

9 html5有哪些新特性、移除了那些元素?

10 HTML5 的离线储存怎么使⽤,⼯作原理能不能解释⼀下?

11 浏览器是怎么对 HTML5 的离线储存资源进⾏管理和加载的呢

12 请描述⼀下 cookies sessionStorage localStorage 的区别?

13 iframe有那些缺点?

14 WEB标准以及W3C标准是什么?

15 xhtml和html有什么区别?

16 Doctype作⽤? 严格模式与混杂模式如何区分?它们有何意义?

17 ⾏内元素有哪些?块级元素有哪些? 空(void)元素有那些?⾏内元

素和块级元素有什么区别?

18 HTML全局属性(global attribute)有哪些

19 Canvas和SVG有什么区别?

20 HTML5 为什么只需要写 <!DOCTYPE HTML>

21 如何在⻚⾯上实现⼀个圆形的可点击区域?

22 ⽹⻚验证码是⼲嘛的,是为了解决什么安全问题

23 viewport

24 渲染优化

25 meta viewport相关

26 你做的⻚⾯在哪些流览器测试过?这些浏览器的内核分别是什么?

27 div+css的布局较table布局有什么优点

28 a:img的alt与title有何异同?b:strong与em的异同?

29 你能描述⼀下渐进增强和优雅降级之间的不同吗

30 为什么利⽤多个域名来存储⽹站资源会更有效?

31 简述⼀下src与href的区别

32 知道的⽹⻚制作会⽤到的图⽚格式有哪些?

33 在css/js代码上线之后开发⼈员经常会优化性能,从⽤户刷新⽹⻚

开始,⼀次js请求⼀般情况下有哪些地⽅会有缓存处理?

33 ⼀个⻚⾯上有⼤量的图⽚(⼤型电商⽹站),加载很慢,你有哪

些⽅法优化这些图⽚的加载,给⽤户更好的体验。

34 常⻅排序算法的时间复杂度,空间复杂度

35 web开发中会话跟踪的⽅法有哪些

36 HTTP request报⽂结构是怎样的

37 HTTP response报⽂结构是怎样的

⼆、CSS部分

1 css sprite是什么,有什么优缺点

2 display: none; visibility: hidden; 的区别

3 link @import 的区别

4 什么是FOUC?如何避免

5 如何创建块级格式化上下⽂(block formatting context),BFC有什么⽤

6 display、float、position的关系

7 清除浮动的⼏种⽅式,各⾃的优缺点

8 为什么要初始化CSS样式?

9 css3有哪些新特性

10 display有哪些值?说明他们的作⽤

11 介绍⼀下标准的CSS的盒⼦模型?低版本IE的盒⼦模型有什么不同

的?

12 CSS优先级算法如何计算?

13 对BFC规范的理解?

14 谈谈浮动和清除浮动

15 position的值, relative和absolute定位原点是

16 display:inline-block 什么时候不会显示间隙?(携程)

17 PNG\GIF\JPG的区别及如何选

18 ⾏内元素float:left后是否变为块级元素?

19 在⽹⻚中的应该使⽤奇数还是偶数的字体?为什么呢?

20 ::before 和 :after中双冒号和单冒号 有什么区别?解释⼀下这2个

伪元素的作

21 如果需要⼿动写动画,你认为最⼩时间间隔是多久,为什么?(阿

⾥)

22 CSS合并⽅法

23 CSS不同选择器的权重(CSS层叠的规则)

24 列出你所知道可以改变⻚⾯布局的属性

25 CSS在性能优化⽅⾯的实践

26 CSS3动画(简单动画的实现,如旋转等

27 base64的原理及优缺点

28 ⼏种常⻅的CSS布局

29 stylus/sass/less区

30 postcss的作⽤

31 css样式(选择器)的优先级

32 ⾃定义字体的使⽤场景

33 如何美化CheckBox

34 伪类和伪元素的区别

35 base64 的使⽤

36 ⾃适应布局

37 请⽤CSS写⼀个简单的幻灯⽚效果⻚⾯

38 什么是外边距重叠?重叠的结果是什么?

39 rgba()和opacity的透明效果有什么不同?

40 css中可以让⽂字在垂直和⽔平⽅向上重叠的两个属性是什么?

41 如何垂直居中⼀个浮动元素?

42 px和em的区别

43 Sass、LESS是什么?⼤家为什么要使⽤他们?

44 知道css有个content属性吗?有什么作⽤?有什么应⽤?

45 ⽔平居中的⽅法

46 垂直居中的⽅法

47 如何使⽤CSS实现硬件加速?

48 重绘和回流(重排)是什么,如何避免?

49 说⼀说css3的animation

50 左边宽度固定,右边⾃适应

51 两种以上⽅式实现已知或者未知宽度的垂直⽔平居中

52 如何实现⼩于12px的字体效果

三、JavaScript

1 闭包

2 说说你对作⽤域链的理解

3 JavaScript原型,原型链 ? 有什么特点?

4 请解释什么是事件代理

5 Javascript如何实现继承?

6 谈谈This对象的理解

7 事件模型

8 new操作符具体干了什么呢?

9 Ajax原理

10 如何解决跨域问题?

11 模块化开发怎么做?

12 异步加载JS的⽅式有哪些?

13 那些操作会造成内存泄漏?

14 XML和JSON的区别?

15 谈谈你对webpack的看法

16 说说你对AMD和Commonjs的理解

17 常⻅web安全及防护原理

18 ⽤过哪些设计模式?

19 为什么要有同源限制?

21 javascript有哪些⽅法定义对象

22 常见兼容性问题?

23 说说你对promise的了解

24 你觉得jQuery源码有哪些写的好的地方

25 vue、react、angular

26 Node的应用场景

27 谈谈你对AMD、CMD的理解

28 那些操作会造成内存泄漏

29 web开发中会话跟踪的⽅法有哪些

30 介绍js的基本数据类型

31 介绍js有哪些内置对象

32 说几条写JavaScript的基本规范

33 JavaScript有⼏种类型的值

34 javascript创建对象的⼏种⽅式

35 eval是做什么的

36 null,undefined 的区别

37 ["1","2","3"].map(parselnt)答案是多少

38 javascript 代码中的"use strict";是什么意思

39 JSON 的了解

40 js延迟加载的⽅式有哪些

41 同步和异步的区别

42 渐进增强和优雅降级

43 defer和async

44 说说严格模式的限制

45 attribute和property的区别是什么

46 谈谈你对ES6的理解

47 ECMAScript6 怎么写class么

48 什么是⾯向对象编程及⾯向过程编程,它们的异同和优缺点

49 ⾯向对象编程思想

50 对web标准、可⽤性、可访问性的理解

51如何通过JS判断一个数组

52 谈-谈let与var的区别

53 map与forEach的区别

54 谈一谈你理解的函数式编程

55 谈⼀谈箭头函数与普通函数的区别?

56 谈⼀谈函数中this的指向

57 异步编程的实现⽅式

58 对原⽣Javascript了解程度

59 Js动画与CSS动画区别及相应实现

60 JS 数组和对象的遍历⽅式,以及⼏种⽅式的⽐较

61 gulp是什么

62 说⼀下Vue的双向绑定数据的原理

63 事件的各个阶段

64 let var const

65 快速的让⼀个数组乱序

66 如何渲染⼏万条数据并不卡住界⾯

67 希望获取到⻚⾯中所有的checkbox怎么做?

68 怎样添加、移除、移动、复制、创建和查找节点

69 正则表达式

70 Javascript中callee和caller的作⽤?

71 window.onload和$(document).ready

72 addEventListener()和attachEvent()的区别

73 获取⻚⾯所有的checkbox

74 数组去重⽅法总结

75 (设计题)想实现⼀个对⻚⾯某个节点的拖曳?如何做?(使⽤

原⽣JS)

76 Javascript全局函数和全局变量

77 使⽤js实现⼀个持续的动画效果

78 封装⼀个函数,参数是定时器的时间,.then执⾏回调函数

79 怎么判断两个对象相等?

80 项⽬做过哪些性能优化?

81 浏览器缓存

82 WebSocket

83 尽可能多的说出你对 Electron 的理解

84 深浅拷⻉

85 防抖/节流

86 谈谈变量提升?

87 什么是单线程,和异步的关系

88 是否⽤过 jQuery 的 Deferred

89 前端⾯试之hybrid

90 前端⾯试之组件化

91 前端⾯试之MVVM浅析

92 实现效果,点击容器内的图标,图标边框变成border 1px solid

red,点击空⽩处重置

93 请简单实现双向数据绑定

94 实现Storage,使得该对象为单例,并对 mvvm localStorage 进⾏封装设置值setItem(key,value)和getItem(key)

95 说说event loop

96 说说事件流

97 为什么 canvas 的图⽚为什么过有跨域问题

98 我现在有⼀个 canvas ,上⾯随机布着⼀些⿊块,请实现⽅法,计

算canvas上有多少个⿊块

99 请⼿写实现⼀个promise

100 说说从输⼊URL到看到⻚⾯发⽣的全过程,越详细越好

101 描述⼀下 this

102 说⼀下浏览器的缓存机制

103 现在要你完成⼀个Dialog组件,说说你设计的思路?它应该有什

么功能?

104 caller callee 的区别

105 ajax、axios、fetch区别

四、jQuery

1 你觉得jQuery或zepto源码有哪些写的好的地⽅

2 jQuery 的实现原理

3 jQuery.fn init ⽅法返回的 this 指的是什么对象

4 jQuery.extend 与 jQuery.fn.extend 的区别

5 jQuery 的属性拷⻉(extend)的实现原理是什么,如何实现深拷贝

6 jQuery 的队列是如何实现的

7 jQuery 中的 bind(), live(), delegate(), on()的区别

8 是否知道⾃定义事件

9 jQuery 通过哪个⽅法和 Sizzle 选择器结合的

10 jQuery 中如何将数组转化为 JSON 字符串,然后再转化回来

11 jQuery ⼀个对象可以同时绑定多个事件,这是如何实现的

12 针对 jQuery 的优化⽅法

13 jQuery 的 slideUp 动画,当⿏标快速连续触发, 动画会滞后反复执

⾏,该如何处理呢

14 jQuery UI 如何⾃定义组件

15 jQuery 与 jQuery UI、jQuery Mobile 区别

16 jQuery 和 Zepto 的区别? 各⾃的使⽤场景

17 jQuery对象的特点

五、Bootstrap

1 什么是Bootstrap?以及为什么要使⽤Bootstrap?

2 使⽤Bootstrap时,要声明的⽂档类型是什么?以及为什么要这样声

明?

3 什么是Bootstrap⽹格系统

4 Bootstrap ⽹格系统(Grid System)的⼯作原理

5 对于各类尺⼨的设备,Bootstrap设置的class前缀分别是什么

6 Bootstrap ⽹格系统列与列之间的间隙宽度是多少

7 如果需要在⼀个标题的旁边创建副标题,可以怎样操作

8 ⽤Bootstrap,如何设置⽂字的对⻬方式?

9 Bootstrap如何设置响应式表格?

10 使⽤Bootstrap创建垂直表单的基本步骤?

11 使⽤Bootstrap创建⽔平表单的基本步骤?

12 使⽤Bootstrap如何创建表单控件的帮助⽂本?

13 使⽤Bootstrap激活或禁⽤按钮要如何操作?

14 Bootstrap有哪些关于的class?

15 Bootstrap中有关元素浮动及清除浮动的class?

16 除了屏幕阅读器外,其他设备上隐藏元素的class?

17 Bootstrap如何制作下拉菜单?

18 Bootstrap如何制作按钮组?以及⽔平按钮组和垂直按钮组的优先

级?

19 Bootstrap如何设置按钮的下拉菜单?

20 Bootstrap中的输⼊框组如何制作?

21 Bootstrap中的导航都有哪些?

22 Bootstrap中设置分页的class?

23 Bootstrap中显示标签的class?

24 Bootstrap中如何制作徽章?

25 Bootstrap中超⼤屏幕的作⽤是什么?

六、微信⼩程序

1 微信⼩程序有⼏个⽂件

2 微信⼩程序怎样跟事件传值

3 ⼩程序的 wxss 和 css 有哪些不⼀样的地⽅?

4 ⼩程序关联微信公众号如何确定⽤户的唯⼀性

5 微信⼩程序与vue区别

七、webpack相关

1 打包体积 优化思路

2 打包效率

3 Loader

4 说⼀下webpack的⼀些plugin,怎么使⽤webpack对项⽬进⾏优化

⼋、编程题

1 写⼀个通⽤的事件侦听器函数

2 如何判断⼀个对象是否为数组

3 冒泡排序

4 快速排序

5 编写⼀个⽅法 求⼀个字符串的字节⻓度

6 bind的⽤法,以及如何实现bind的函数和需要注意的点

7 实现⼀个函数clone

8 下⾯这个ul,如何点击每⼀列的时候alert其index

9 定义⼀个log⽅法,让它可以代理console.log的⽅法

10 输出今天的⽇期

11 ⽤js实现随机选取10–100之间的10个数字,存⼊⼀个数组,并排序

12 写⼀段JS程序提取URL中的各个GET参数

13写-个function,清除字符串前后的空格

14 实现每隔⼀秒钟输出1,2,3...数字

15 实现⼀个函数,判断输⼊是不是回⽂字符串

16、数组扁平化处理

九、其他

1 负载均衡

2 CDN

3 内存泄漏

4 babel原理

5 js⾃定义事件

6 前后端路由差别

⼗、综合

1 谈谈你对重构的理解

2 什么样的前端代码是好的

3 对前端⼯程师这个职位是怎么样理解的?它的前景会怎么样

4 你觉得前端⼯程的价值体现在哪

5 平时如何管理你的项目

6 组件封装

⼗⼀、⼀些常⻅问题

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1699712.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

QT常量中有换行符

头文件添加&#xff1a; #pragma execution_character_set("utf-8")

深入理解计算机系统 家庭作业4.52

练习题4.3 p.254 \sim\seq\seq-full.hcl文件内已经说的很清楚了哪些不能更改,哪些是题目要求更改的控制逻辑块. 依据家庭作业4.51的答案,在seq-full.hcl文件内更改对应的HCL描述即可 以下答案注释了#changed的就是更改部分 #/* $begin seq-all-hcl */ ######################…

CCF CAT- 全国算法精英大赛(2024第二场)往届真题练习 3 | 珂学家

前言 这是2024年第一场CCF初赛的题&#xff0c; 其实整场比赛&#xff0c;感觉不是特别难&#xff0c;就是码量大&#xff0c;偏模拟和数学。 对于A题&#xff0c;摩斯密码&#xff0c;很容易抄错&#xff0c;我一直在想有什么好办法可以规避它&#xff0c;是真的苦涩。 真题…

Linux系统启动原理

Linux系统启动原理及故障排除 Centos6系统启动过程 修改系统启动级别 vim /etc/inittabCentos7启动流程 加载BIOS信息&#xff0c;进行硬件检测 根据BIOS设定读取设备中的MBR&#xff0c;加载Boot loader 加载内核&#xff0c;内核初始化以后以模块的形式动态加载硬件 并且加…

死锁及线程与队列之间的等待关系

死锁及线程与队列之间的等待关系 死锁及线程与队列之间的等待关系案例一案例二案例三案例四案例五 结语 死锁及线程与队列之间的等待关系 我想要补充一下我之前GCD学习中没能理解清楚的死锁及线程与队列之间的等待关系&#xff0c;因为在看锁的博客时&#xff0c;有人给出了一…

如何在 Elasticsearch 中选择精确 kNN 搜索和近似 kNN 搜索

作者&#xff1a;来自 Elastic Carlos Delgado kNN 是什么&#xff1f; 语义搜索&#xff08;semantic search&#xff09;是相关性排名的强大工具。 它使你不仅可以使用关键字&#xff0c;还可以考虑文档和查询的实际含义。 语义搜索基于向量搜索&#xff08;vector search&…

Gradient-checkpointing的原理

原文&#xff1a; 将更大的网络安装到内存中。|by 雅罗斯拉夫布拉托夫 |张量流 |中等 (medium.com) 前向传播时&#xff0c;隔几层就保留一层activation数据&#xff0c;其余层的activation都释放掉&#xff1b; 反向传播时&#xff0c;从最近的checkpoint去重新跑forward&…

Docker部署SpringBoot项目(jar包+Mysql)

部署Java项目 项目准备准备Java项目镜像准备配置网络 部署项目细节展示 项目准备 准备Java项目 hmall项目是一个maven聚合项目&#xff0c;使用IDEA打开hmall项目&#xff0c;查看项目结构如图&#xff1a; 我们要部署的就是其中的hm-service&#xff0c;其中的配置文件采用…

前 9 名最佳视频转换器软件完全免费

前 9 名免费视频转换器是什么&#xff1f;在此视频转换器评论中&#xff0c;我们收集了一些有用的提示并列出了顶级免费视频转换器软件&#xff0c;并找出适合所有级别&#xff08;从初学者到专家&#xff09;的最佳免费视频转换器。 顶级视频转换器列表 在这一部分中&#xf…

go 爬虫之 colly 简单示例

1. 背景 colly 是 Go 实现的比较有名的一款爬虫框架&#xff0c;而且 Go 在高并发和分布式场景的优势也正是爬虫技术所需要的。它的主要特点是轻量、快速&#xff0c;设计非常优雅&#xff0c;并且分布式的支持也非常简单&#xff0c;易于扩展。 2. 官方文档 https://go-col…

【简单易用,新人友好】一个轻量级生物信息学流程框架,从此解决99%的生物信息学流程搭建问题...

生物信息学数据分析流程的搭建是一项繁重而复杂的工作。随着行业的发展&#xff0c;各种生信流程框架层出不穷&#xff0c;比如有: NextflowSnakemakeCWLWDL 各种标准&#xff0c;各种规则&#xff0c;令人眼花缭乱。选择太多&#xff0c;往往令人无所适从。特别是新进入行业的…

03自动辅助导航驾驶NOP其实就是NOA

蔚来NOP是什么意思&#xff1f;蔚来NOP是啥 蔚来NOP的意思就是NavigateonPilot智能辅助导航驾驶&#xff0c;也就是大家俗称的高阶辅助驾驶&#xff0c;在车主设定好导航路线&#xff0c;并且符合开启NOP条件的前提下&#xff0c;蔚来NOP可以代替驾驶员完成从A点到B点的智能辅助…

<学习笔记>从零开始自学Python-之-实用库篇(一)-pyscript

由Anaconda创建的PyScript是一项实验性的但很有前途的新技术&#xff0c;它使python运转时在支撑WebAssembly的浏览器中作为一种脚本言语运用。 每个现代常用的浏览器现在都支撑WebAssembly&#xff0c;这是许多言语&#xff08;如C、C和Rust&#xff09;能够编译的高速运转时…

springboot项目,@Test写法 @Before @After

某文件示例 package cn.xxx.crm.boss;import cn.xxxx.crm.manager.mq.rabbit.AliyunCredentialsProvider; import com.rabbitmq.client.AMQP; import com.rabbitmq.client.Channel; import com.rabbitmq.client.Connection; import com.rabbitmq.client.ConnectionFactory; im…

大模型提示词Prompt学习

引言 关于chatGPT的Prompt Engineer&#xff0c;大家肯定耳朵都听起茧了。但是它的来由&#xff1f;&#xff0c;怎么能用好&#xff1f;很多人可能并不觉得并不是一个问题&#xff0c;或者说认定是一个很快会过时的概念。但其实也不能说得非常清楚&#xff08;因为觉得没必要深…

x264 码率控制中实现 VBV 算法源码分析

关于 VBV 的解释与原理可以参考x264 码率控制 VBV 原理。 x264中 VBV 算法执行的流程 vbv 参数配置相关函数 x264_param_default函数 功能:编码参数默认设置,关于 vbv的参数的默认设置;函数内vbv相关代码:/* ... */ //代码有删减 param->rc.i_vbv_max_bitrate = 0; par…

《软件方法(下)》8.3.4.3 关于“整体-部分”结构

DDD领域驱动设计批评文集 做强化自测题获得“软件方法建模师”称号 《软件方法》各章合集 8.3 建模步骤C-2 识别类的关系 8.3.4 识别关联关系 8.3.4.2 关联的进一步细分 是否进一步细分各种关联&#xff0c;各种面向对象方法学观点不同。有的认为关联就是关联&#xff0c;…

mvc的常见注解

问文心一言的&#xff0c;记录一下。 PathVariable 路径变量注解 PathVariable 是 Spring MVC 提供的一个注解&#xff0c;它用于从 URI 模板变量中绑定值到控制器方法的参数上。当你在 RequestMapping、GetMapping、PostMapping、PutMapping、DeleteMapping 等注解的 URL 路…

maven默认src下的xml,properties文件不打包到classes文件夹下

一、第一种是建立src/main/resources文件夹&#xff0c;将xml&#xff0c;properties等资源文件放置到这个目录中。maven工具默认在编译的时候&#xff0c;会将resources文件夹中的资源文件一块打包进classes目录中。 这时候注意把resources设置成resource目录&#xff0c;已经…

操作系统 c语言模仿 动态分区存储管理方式的主存分配回收

1&#xff0e;实验目的 深入了解动态分区存储管理方式的主存分配回收的实现。 2&#xff0e;实验预备知识 存储管理中动态分区的管理方式。 3&#xff0e;实验内容 编写程序完成动态分区存储管理方式的主存分配回收的实现。实验具体包括&#xff1a;首先确定主存空间分配表&…