龙空技术网

蚂蚁金服架构师总结的400道前端面试题,已拿淘系offer

Java干货分享 533

前言:

现在同学们对“前端面试介绍项目自己负责的模块”大体比较关注,看官们都想要剖析一些“前端面试介绍项目自己负责的模块”的相关内容。那么小编也在网上汇集了一些对于“前端面试介绍项目自己负责的模块””的相关知识,希望看官们能喜欢,朋友们快快来了解一下吧!

最近很多前端小伙伴在面试,前端学习内容复杂、网上资料良莠不齐,想要靠自己梳理清楚确实不容易,为了帮助想要跳槽进大厂的你在金三银四顺利通过前端面试,总结出这「 400 道前端工程师常考必考面试题+详细解答」于是我翻箱倒柜,把这份蚂蚁金服大牛总结的前端开发归纳笔记找出来。

传说有小伙伴靠这份笔记顺利进入 BAT 哦,所以一定要好好学习这份资料!做下一个靠这份笔记进入BAT的人~(神话传说)

前端基础293道

1.css3有哪些新特性

2.first-childfirst-of-type的区别是

3.解决使用transform:translate属性时会出现闪烁现象

4.如何使用@keyframes使div元素移动200像素

5.如何实现文本换行

6.超出文本省略

7.css3动画如何在动作结束时保持状态不变

8.实现某div元素以每秒50px的速度左移100px

9.说说box-sizing属性

10.如何实现把文本分隔为4列并使两列之间间隔30像素

11.background-clipbackground-orgin的区别

12.css3transition属性值以及含义是

13.当元素不面向屏幕时其可见性如何定义

14.如何实现css3倒影

15.css3实现背景颜色线性渐变

16.为盒子添加蒙版

17.animation属性值有哪些

18.rem的原理是什么

19.如何设置css3文本阴影

20.如何把元素从左侧移动50像素,从顶端移动100像素

21.如何把一个元素旋转30°

22.利用css3制作淡入淡出的动画效果

23.在使用Bootstrap的同时使用地图api,可能会造成Bootstrap与地图冲突,地图显示不出来,如何解决

24.jquery中的deferred的功能

25.什么是deferred对象

26.jqueryjquery ui的区别

27.如何用原生JavaScript实现jqueryready方法

28.jquery中的attrprop区别

29.$.map()$.each()区别

30. jquery中如何将一个jquery对象转化为dom对象

31.jquery中监听事件有几种方式

32.jquery中个geteq区别

33.jquery中的事件冒泡,怎么执行,如何停止冒泡事件

34.jquery中的hovertoggle区别

35. 你使用过哪些数据格式

36.选择器中idclass有什么区别

37.为了将单选按钮组的第二个选框设置为选中状态,如何设置

38.$.getScript()方法和$.getJson()方法有什么区别

39.jqueryzepto源码有哪些地方觉得不错

40.jQuery中的美元符号

41.onload()函数和ready()函数的区别

42.jQuery中有哪几种常见的选择器

43.使用jQuery将页面上所有元素边框设置为2px宽的虚线

44.使用jQuery实现单击按钮时弹出一个对话框

45.如何使用jquery编码和解码url

46.jquery中的delegate()函数有什么作用

47.如何禁用浏览器的前进和后退按钮

48.网页上有5个<div>元素,如何使用jquery来选择它们

49.如何在单击一个按钮时使用jQuery隐藏一副图片

50. $(document).ready()是什么函数

51.如何找到所有多选下拉框内的选中项

52.如何获取页面中所有多(复)选框内选中选项的内容

53.$(this)this关键字在jquery中的不同

54.提取链接的href

55.能用jquery代码选择所有在段落内部的超链接吗

56.jquery中的detach()remove()方法的区别

57.如何利用jquery,来向一个元素添加或移除css

58.使用cdn加载jquery库的主要优势是什么

59.jQuery.ajax()jQuery.get()方法之间的区别

60.要是在一个jQuery事件处理程序里返回了false会怎么样

61.document.getElementbyId("myId")$("#myId")哪个更高效

62.jQuery中的方法链是,使用的好处

63.如何用jquery将一个html元素添加到dom树中

64.你是如何使用jquery中的ajax

65.页面导入样式时,使用link@import有什么区别?

66.HTML全局属性(global attribute)有哪些(包含H5)?

67.写一个方法去掉字符串中的空格

68.CSS3有哪些新增的特性?

69.用递归算法实现,数组长度为5且元素的随机数在2-32间不重复的值

70.写一个加密字符串的方法

71.浏览器内多个标签页之间的通信方式有哪些?

72.简述下你理解的优雅降级和渐进增强

73.viewport常见设置都有哪些?

74.对比下px、em、rem有什么不同?

75.简要描述下什么是回调函数并写一个例子出来

76.你对标签语义化的理解是什么?

77.在页面上隐藏元素的方法有哪些?

78.去除字符串中最后一个指定的字符

79.HTML5的文件离线储存怎么使用,工作原理是什么?

80.CSS选择器有哪些?哪些属性可以继承?

81.简述超链接target属性的取值和作用

82.CSS3新增伪类有哪些并简要描述

83.label都有哪些作用

84.用css创建一个三角形,并简述原理

85.Iframe 有什么好处,有什么坏处?国内还有哪些知名网站仍用Iframe,为什么?有哪些原来用的现在抛弃了?又是为什么?

86.简述你对BFC规范的理解

87.统计某一字符或字符串在另一个字符串中出现的次数

88.清除浮动的方式有哪些及优缺点?

89.简要描述下JS有哪些内置的对象

90.常见的浏览器内核都有哪些?

91.盒模型的理解

92.html5中的form怎么关闭自动完成?

93.::before:after中单冒号和双冒号的区别是什么

94.说说你对javascript的作用域的理解

95.http都有哪些状态码?

96.为什么HTML5只需要写<!DOCTYPE HTML>就可以

97.什么是闭包?优缺点分别是什么?

98.写一个数组去重的方法

99.元素的alttitle有什么区别?

100.table的作用和优缺点是什么呢?

101. typeof('abc')typeof 'abc'都是string, 那么typeof是操作符还是函数?

102.说说你对SVNGIT的理解和区别

103.什么是FOUC?你是如何避免FOUC的?

104.css的属性content有什么作用呢?

105."attribute""property"有什么不同?

106.写一个验证身份证号的方法

107.对于HTML表单输入字段,disabled =“ disabled”和readonly =“ readonly”有什么区别?

108.说说你对line-height是如何理解的?

109.说说你对重绘和重排的理解,以及如何优化?

110.0.1 + 0.2、0.1 + 0.3和0.1 * 0.2分别等于多少?并解释下为什么?

111.new操作符的理解是什么?手动实现一个new方法

112.jquery中是如何操作类的

113.使用jQuery中的动画

114.单击超链接后自动跳转,单击“提交”按钮后表单会提交等,有时候,为了阻止默认行为,怎么办

115.你使用什么方法提交数据

116.在ajax中获取数据的主要有几种方式

117.jquery中使用过哪些插入节点的方法

118.在jquery中,如何获取或者设置属性?如何删除属性

119.如何设置和获取html以及文本的值

120.说说<script>、<script async>和<script defer>的区别

121.说说你对z-index的理解

122.包裹节点的方法有哪些?用包裹节点方法的好处?

123.如何实现自适应布局

124.在移动端如何做好用户体验

125.如何解决长时间按住页面出现闪退的问题

126.解决iPhone以及iPad输入框的默认内阴影的问题

127.如何解决安卓手机圆角失效问题

128.如何解决ios设置中input按钮样式会被默认样式覆盖的问题

129.如何解决移动端click事件有300ms延迟问题

130.如何解决移动端html5中的date类型的input标签不支持placeholder属性的问题

131.如何禁止复制或选中文本

132.解决上下拖动滚动条时的卡顿问题

133.说说XHTML

134.为什么10.toFixed(10)会报错?

135.DOMBOM有什么区别?

136.验证码是为了解决什么问题?

137.写一个获取数组的最大值、最小值的方法

138.css的权重计算规则

139.输入 URL 到页面展示

140.rgba()opacity

141.对arguments的理解,它是数组吗?

142.说说bind、call、apply的区别?并手写实现一个bind的方法

143.说说你对this的理解

144.如何解决块属性标签浮动后,在设置水平margin的情况下,在ie6中显示的margin比设置的大的问题。

145.页面中的图片元素为什么默认具有间距。

146.怎么实现盒模型

147.如何解决li元素内出现浮动元素时产生间隙的问题

148.如何让长单词以及较长的url转换

149.如何解决display:inine-blockie6ie7下不兼容的问题

150.如何解决ie6不支持position:fixed属性的问题

151.如何获取自定义属性数据

152.说说event.srcElement兼容问题

153.说说body载入问题

154.如何实现元素水平居中

155.如何让p元素垂直居中

156.margin的加倍问题

157.如何解决ie6下图片有空隙的问题

158.如何让文本与文本输入框对齐

159.解决ie无法设置滚动条颜色的问题

160.解决form标签边距兼容性问题

161.构造函数的特点

162.javascript中继承的实现方法

163.如何通过new构造对象。

164.面向对象的特性

165.面向对象编程三大特点概述

166.this通常的指向

167.实现对象的继承

168.JSONP实现跨域

169.ajax请求

170.异步加载的方式

前端核心40道

1. 简述一下你对 HTML 语义化的理解?

2. 标签上 title 与 alt 属性的区别是什么?

3. iframe的优缺点?

4. 介绍一下 CSS 的盒子模型?

5. 垂直居中几种方式?

6. rgba和opacity的透明效果有什么不同?

7. position的值, relative和absolute分别是相对于谁进行定位的?

8. HTML5、CSS3 里面都新增了哪些新特性?

9. BFC 是什么?

10. 常见兼容性问题?

11. JS 数据类型 ?

12. 判断一个值是什么类型有哪些方法?

13. null 和 undefined 的区别?

14. 怎么判断一个变量arr的话是否为数组(此题用 typeof 不行)?

15. 箭头函数有哪些特点?

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

17. documen.write 和 innerHTML 的区别?

18. ajax过程?

19. 请解释一下 JavaScript 的同源策略?

20. 介绍一下闭包和闭包常用场景?

21. javascript的内存(垃圾)回收机制?

22. 谈谈你对MVVM开发模式的理解?

23. v-if 和 v-show 有什么区别?

24. 你使用过 Vuex 吗?

25. 说说你对 SPA 单页面的理解,它的优缺点分别是什么?

26. Class 与 Style 如何动态绑定?

27. 怎样理解 Vue 的单向数据流?

28. computed 和 watch 的区别和运用的场景?

29. 直接给一个数组项赋值,Vue 能检测到变化吗?

30. 谈谈你对 Vue 生命周期的理解?

31. Vue 的父组件和子组件生命周期钩子函数执行顺序?

32. 父组件可以监听到子组件的生命周期吗?

33. Vue 框架怎么实现对象和数组的监听?

34. Vue 是如何实现数据双向绑定的?

35. Vue 怎么用 vm.$set() 解决对象新增属性不能响应的问题

36. 虚拟 DOM 的优缺点?

37. 虚拟 DOM 实现原理?

38. Vue 中的 key 有什么作用?

39. 你有对 Vue 项目进行哪些优化?

40. 对于 vue3.0 特性你有什么了解的吗?

由于篇幅展示有限,需要获取完整答案的小伙伴们,私信本人关键字:“面试答案”即可获取

前端进阶61道

Node 模块机制

1、请介绍一下 node 里的模块是什么

2 、请介绍一下 require 的模块加载机制

3、加载模块时,为什么每个模块都有__dirname,__filename 属性呢,new Module 的时候我们看到 1.1 部分没有这两个属性的,那么这两个属性是从哪里来的

4、我们知道 node 导出模块有两种方式,一种是 exports.xxx=xxx 和 Module.exports={}有什么区别吗

Node 的异步 I/O

1、 请介绍一下 Node 事件循环的流程

2 、在每个 tick 的过程中,如何判断是否有事件需要处理呢?

3 、请描述一下整个异步 I/O 的流程

​V8 的垃圾回收机制

1、如何查看 V8 的内存使用情况

2、V8 的内存限制是多少,为什么 V8 这样设计

3、V8 的内存分代和回收算法请简单讲一讲

新生代老生代标记清楚算法的问题哪些情况会造成 V8 无法立即回收内存请谈一下内存泄漏是什么,以及常见内存泄漏的原因,和排查的方法

Buffer 模块

1、新建 Buffer 会占用 V8 分配的内存吗

2、Buffer.alloc 和 Buffer.allocUnsafe 的区别

3、Buffer 的内存分配机制

4、Buffer 乱码问题

webSocket

1、webSocket 与传统的 http 有什么优势

2、webSocket 协议升级时什么,能简述一下吗?

https

1、https 用哪些端口进行通信,这些端口分别有什么用

2、身份验证过程中会涉及到密钥, 对称加密,非对称加密,摘要的概念,请解释一下

3、为什么需要 CA 机构对证书签名

4、https 验证身份也就是 TSL/SSL 身份验证的过程

​进程通信

1、请简述一下 node 的多进程架构

2、请问创建子进程的方法有哪些,简单说一下它们的区别

3、请问你知道 spawn 在创建子进程的时候,第三个参数有一个 stdio 选项吗,这个选项的作用是什么,默认的值是什么。

4、请问实现一个 node 子进程被杀死,然后自动重启代码的思路

5、在 7.4 的基础上,实现限量重启,比如我最多让其在 1 分钟内重启 5 次,超过了就报警给运维

6、如何实现进程间的状态共享,或者数据共享

中间件

如果使用过 koa、egg 这两个 Node 框架,请简述其中的中间件原理,最好用代码表示一下

以上就是前端必考400道题及答案,由于篇幅展示有限,需要获取完整答案的朋友们,私信本人关键字:“面试答案”即可获取

标签: #前端面试介绍项目自己负责的模块