真题3 某知名安全软件服务提供商前端工程师笔试题
一、单选题
1.HTML5的新特性不包括( )。
A.语义化的Web
B.削弱对第三方插件的依赖
C.新增SVG绘画
D.引入Web Workers规范
2.以下属性选择器表示属性值以“val-”开头的是( )。
A.[attr^="val"]
B.[attr~="val"]
C.[attr|="val"]
D.[attr$="val"]
3.HTTP请求报文由5部分组成,以下不属于请求报文的是( )。
A.请求方法
B.状态码
C.HTTP版本
D.请求首部
4.下列选项不是Array对象(即数组)的方法的是( )。
A.push()
B.shift()
C.split()
D.join()
5.净室软件工程(Cleanroom)是软件开发的一种形式化方法,可以开发较高质量的软件,它发现和排除错误的主要机制是( )。
A.正确性验证
B.黑白盒测试
C.集成测试
D.基本路径测试
6.对于IP地址130.63.160.2,掩码为255.255.255.0,子网号为( )。
A.160.2
B.160
C.63.160
D.63.160.2
7.以下关于计算机的描述中,不正确的是( )。
A.进程调度有“可抢占”和“非抢占”两种方式,后者引起系统的开销更大
B.每个进程都有自己的文件描述符表,所有进程共享同一打开文件表和v-node表
C.基本的存储技术包括RAM、ROM、磁盘以及SSD,其中访问速度最慢的是磁盘,CPU的高速缓存一般是由RAM组成的
D.多个进程竞争资源出现了循环等待可能造成系统死锁
8.以下关于排序算法的描述中,正确的是( )。
A.快速排序的平均时间复杂度为O(nlogn),最坏时间复杂度为O(nlogn)
B.堆排序的平均时间复杂度为O(nlogn),最坏时间复杂度为O(n^2)
C.冒泡排序的平均时间复杂度为O(n^2),最坏时间复杂度为O(n^2)
D.归并排序的平均时间复杂度为O(nlogn),最坏时间复杂度为O(n^2)
9.具有n个顶点的有向图,所有顶点的出度之和为m,则所有顶点的入度之和为( )。
A.m
B.m+1
C.n+1
D.2m+1
二、多选题
1.怪异模式中的怪癖行为包括( )。
A.宽度和高度的算法与W3C盒模型不同
B.在表格中的字体样式(如font-size等)不会继承
C.当内容超出容器高度时,会自动裁剪超出的内容
D.颜色值必须用十六进制标记法
2.可以作为CSS中的display属性值的有( )。
A.list-item
B.table
C.run-in
D.flex
3.下面对于HTTP状态码描述正确的是( )。
A.200表示请求已被正常处理
B.304表示资源未被修改
C.403表示请求被服务器拒绝
D.503表示服务器无法处理请求
三、填空题
1.执行下面的代码后,ul元素的高度是__________px。
2.4+3+2+"1"等于__________,"1"+2+4等于__________。
3.执行下面的代码后,在控制台输出的y为__________。
4.false=="0"得到的结果为__________,false==="0"得到的结果为__________。
5.执行({a:e, a:f}={b:5, a:6})后,e的值为__________,f的值为__________。
四、问答题
1.HTML和HTML5的区别有哪些?
2.你怎么看待Web App、Hybrid App和Native App?
3.CSS指的是什么?
4.什么是外边距塌陷?
5.请谈一下对计算机网络的理解。
6.什么是MAC地址?
7.JavaScript有哪些优势和劣势?
8.在DOM中,事件对象的两个属性target和currentTarget有什么区别?
9.在HTTP响应报文中会包含哪些首部?
10.扩展运算符(...)的用途有哪些?
11.find()和indexOf()有哪些区别?
12.类有哪些成员?
13.Shadow DOM和Virtual DOM之间有哪些区别?
14.有没有办法强制React组件重新渲染,而不用setState()方法?
15.在React中,什么是高阶组件(HOC)?
16.请描述一下React中的Jest。
17.在webpack.config.js的output字段中,它的chunkFilename属性有何作用?
18.请谈一下你对GZIP的理解。
19.Vue.js中的.sync修饰符有什么作用?
20.什么是泛型?
五、编程题
1.如何用纯CSS的方式让超出容器宽度的文本自动替换为省略号?
2.编写一个函数,能让两个并不大的小数正确相乘。
3.统计字符串“xxxxyyydda”中每个字母出现的次数。
4.假设下面div元素中的a元素可动态添加,现在要求单击任意的a元素,都能让它的自定义属性data-digit的值和内容进行拼接,再用alert()方法输出拼接后的结果。
5.如何用ES6语法导入模块的成员?
六、面试题
1.你没有工作经验,如何能够胜任这个岗位?
2.你的好朋友是如何评价你的?