前端面试题 -- 点我达
昨天,在线笔试点我达校招笔试题,感觉很基础,看大家掌握了多少前端知识,特此分享一下。
一、单选题
- console.log(1+'1'); 的结果,(选项是:11, 2,1, NaN)
- 输出parseInt('77', 40); (选项是:308, 287, 77, NaN)
- HTMLDivElement的继承关系,从以下选择:HTMLDivElement, HTMLElement, Element, Node, EventTargent。
- 浏览器一般会缓存页面,但是通过设置可以使内容不被缓存,因此,可以设置cache-control的值是什么时,内容不被缓存。(选项是: no-store, no-transform, no-cache, max-age)
二、不定项选择题
- 下列哪些不是css的继承属性(选项是:color, text-align, display, border-style)
- 下列哪些是ES5的保留关键字(选项是:const, debugger, class, argument)
- 下列哪些方法不会改变原数组(选项是:push(), slice(), splice(), sort())
三、问答题
- 尽可能多的列出你所知道的HTML5规范的新特性
- 写出下列代码的输出内容
console.log('one'); setTimeout(function(){ console.log('two'); },0); Promise.resolve().then(function(){ console.log('three'); }); console.log('four');
-
写出css代码,用flex布局使div中的p元素水平垂直居中
<div class="flex"> <p>one two three</p> </div>
-
洗牌算法: 描述,用JavaScript写出,一副牌随机打乱之后(相当于洗牌)的算法,要求输入一个数组,用洗牌算法之后,输出打乱后的数组。
-
用JavaScript写出一个双向链表,并使以下操作得以实现,const linkList = new LinkList(); 使linkList.append(value);在链表尾部插入一个数value,linkList.prepend(value);在链表头部插入一个数据value,linkList.delete(2),删除链表中所有值为2的数据,并返回删除的项数。