CVTE前端三面面经

技术面的问题都是很基础很简单的问题,不过有些自己给忘记了,而且没答好

一面

是个比较年轻的面试官,上来先自我介绍了一下,然后就开始问问题了,写了一个css的代码和一段简单的dom操作的代码。

  • 实现一个左边带有三角形的对话框形状
    • 这个主要就用了:after实现
  • 有没有解决过css方面浏览器兼容的问题
    • 因为平时css本来学的就不太好,我表示只知道一个清除浮动clearfix类的时候需要采用zoom:1来触发IE的haslayout方法,其他的就不是很了解了
  • 让我手写了一个代码, 把div1的span插入到div2里的两个span中间,我就写了差不多下面这样的代码,因为我印象里insertBefore是会把节点从原来的节点知道移到插入的位置,不需要移除原来的节点,但是面试官说我错了= =,说需要removeChild(), 我回来试了一下 确实是不需要移除的
<div class="div1">
    你好
 <div>
 <div class="div2">
    hello
    how are you
 </div>
var div1 = document.querySelector('.div1');
var nodeNeedRemoved = div1.querySelector('span');
var div2 = document.querySelector('.div2');
var nodebefor = div2.querySelectorAll('span')[1];
div2.insertBefore(nodeNeedRemoved, nodebefor);
  • 事件,让我描述一下我知道的事件相关概念
    • 事件流:先是捕获阶段,从document到html到body一直到具体元素,对具体元素进行处理,再到冒泡阶段,一直到document
    • 兼容的添加事件的方法,主要就是三个addEventListener , attachEvent, on + [event]
    • 事件阻止默认事件的方法,e.preventDefault()和e.returnValue = false;
    • 事件冒泡: e.stopPropagation()和e.cancelBubble=true;
  • 原型相关问题
    • 描述了一下原型链
    • 一个函数的prototype等于什么,这个我真的没有答上来,自己其实知道,就是讲不出来 = =。回来又查了一下,这个属性是一个指针,指向一个对象(原型对象),而这个对象的用途是包含可以有特定类型的所有实例共享的属性和方法
    • 然后问我原型用在什么地方,我回答继承
    • 让我写了个原型链继承的方法
    • 然后问我用这种方法怎么实现多重继承,我只想到把所有的需要继承超类型的原型对象里的方法,都进行浅复制,放在一个对象里,然后把这个对象赋值给子类型的prototype,但是面试官好像要的不是这个方法
  • 好像还有些其他的问题,我不太记得了

二面

二面面的非常不好,有两个原因吧,一个是在大厅等的时候空调真的开的太冷了!进去的时候有点冻傻了,还有就是面试官看着我用电脑敲代码,其实心里又紧张,就一直出小错

  • 让我实现一个css样式,body里有两个嵌套的div,两个div均是正方形,第一个div的长度是body的50%,第二个是第一个div的50%,两个div均垂直水平居中,怎么实现

    • 这个主要是有两个考点,一个是正方形的实现(padding实现)
    • 一个是居中(绝对定位完全受限margin:auto时能够居中)
  • 正则表达式匹配

    • 一个字符串,当它全是大写字母,全是小写字母,只有首字符大写时返回true,其他时候返回false,我写正则的时候忘了//,,,导致一直通不过- - 面试官就直接问我平时是不是IDE用多了
  • 输入一个数组和一个数,找出数组中是否存在两个数字和为输入参数的,有则输出对应的位置

  • 还有一道智力题,我也没想到最好的答案,感觉二面还是面的不太好的

hr面

惨不忍睹,本来平时就不太会讲人生理想一些大长串的话,还让我讲印象最深刻的事,我从小的活的比较随性= = 根本想不到,回答的完全没有其他三位好。还是要多练习练习。

#广州视源电子科技股份有限公司##前端工程师#
全部评论
大佬还是面试经验少了点。加油(ง •̀_•́)ง
点赞
送花
回复
分享
发布于 2017-09-18 10:14
纯css怎么实现第一个正方形的高等于宽?
点赞
送花
回复
分享
发布于 2017-09-18 18:58
滴滴
校招火热招聘中
官网直投
您好,有hr联系方式吗
点赞
送花
回复
分享
发布于 2017-09-21 10:10
拿到offer没
点赞
送花
回复
分享
发布于 2017-09-21 10:53
我靠  题目一摸一样,我也是!!!!
点赞
送花
回复
分享
发布于 2017-09-21 11:14
班花谦虚了,其实HR面如实描述一下在稍微加一点修饰就好了!我始终认为坦诚是最好的交流方式,连HR都说我怎么这么坦诚
点赞
送花
回复
分享
发布于 2017-09-29 12:03

相关推荐

面试官人特别特别好,真的学到很多东西,他还会引导我回答问题没有自我介绍和项目问题,直接开始问技术问题html5,4.0,说说这些版本之间的区别?语义化有什么好处吗?script一般放在哪个位置?为什么放在body最后?什么时候用defer,什么时候不用defer?要是有一个script标签里面的内容不是必须的,但是这个script标签发生错误,页面会白屏吗?有哪几种可能性呢?没有加async/defer情况下一定会白屏吗?常见的js错误有哪些呢?(看错误有没有影响主页面渲染进程)position有哪几种取值?哪些脱离文档流,哪些没有脱离文档流?现在有一个元素(fixed定位)在页面的右下方,这时给它套一个父元素(relative定位),会有什么影响呢?要是换成absolute呢?es6有哪些新特性?这些知识大都是背下来还是理解下来的?const&nbsp;a&nbsp;=&nbsp;&quot;a&quot;const&nbsp;b&nbsp;=&nbsp;&quot;b&quot;const&nbsp;c&nbsp;=&nbsp;&quot;a&quot;&nbsp;+&nbsp;&quot;b&quot;const&nbsp;d&nbsp;=&nbsp;a&nbsp;+&nbsp;bc&nbsp;==&nbsp;d&nbsp;?c&nbsp;===&nbsp;d?在js中基本类型有哪些?基本类型引用类型存在哪里?在栈中存的是值还是地址?string是什么类型?上述代码有几份“ab”?使用vue中v-for渲染十个div([0....9])(div里面没有东西),现在变成[0.....8]是第一个被销毁还是第十个被销毁?哪些元素被销毁了,哪些元素会重新渲染?变成[1...9],那现在被销毁的是哪个?现在变成{{&nbsp;index&nbsp;}},现在变成[0....8],销毁的是哪一个?变成[1....9]呢?大量元素的时候,除了虚拟滚动的方式还有什么方法?(时间分片、管道)前端组件化、模块化怎么做的?a文件中引入c文件,b文件中引入c文件,打包完成后,源码中有几份c文件?npm里面安装了几个依赖,一个组件包安装的是vue2,另外一个安装的是vue3,会不会安装成功?三到五天出结果,面试官夸我了诶他居然说我很不错我真的哭死
点赞 评论 收藏
转发
点赞 评论 收藏
转发
点赞 45 评论
分享
牛客网
牛客企业服务