原本是想一面过了再发出来的(想给人一种深藏功与名的感受hhhh),可是一面没有过哦(凉的理所固然)。我的以为仍是基础知识不够扎实(深度和广度都不够),除了技术,其余方面表现的都还行哈哈哈哈(但是有什么用???!!!)css
首先是自我介绍,而后面试官致命三连:以前有实习经历吗?答:没有(笑);以前有写过c++,java吗?答:暂时尚未学习后台语言,等工做了前端学好了会学习一门后台语言的(心里os:我要是会,我还会来应聘前端岗?);以前有学过其余语言吗?答:没有(其实大一学过C语言,可是不敢回答,惧怕被提问)前端
1.移动端点透问题的处理java
1.1 移动端点透问题是啥?webpack
当一个元素放覆盖了另外一个元素, 覆盖的元素监听touch事件, 若是被覆盖的元素监听click事件,touch事件触发后覆盖的元素就消失了, 那么就会出现点透问题
① 当手指触摸到屏幕的时候,系统生成两个事件,一个是touch 一个是click
② touch事件先执行,执行完后从文档上消失
③ click事件有100~300ms延迟,因此后执行
④ 但click事件执行的时候触发的元素已经消失了, 对应的位置如今是下面的元素, 因此就触发了下面元素的click事件c++
1.3 移动端点透问题解决方案web
① 在touch事件中添加event.preverDefault(); 阻止事件扩散面试
let oClick = document.querySelector(".click"); let oTap = document.querySelector(".tap"); oTap.ontouchstart = function (event) { this.style.display = "none"; event.preventDefault(); //阻止事件扩散 }; oClick.onclick = function () { console.log("click"); }
② 使用Zepto解决这个问题
③ 使用Fastclick插件chrome
2.两个元素重叠,点击上面的元素如何告知浏览器想要点击的是下面那个元素gulp
pointer-events: none;
2.3 注意区分:cursor: pointer;
promise
cursor 属性规定要显示的光标的类型(形状)。
auto 默认。浏览器设置的光标。
default 默认光标(一般是一个箭头)
pointer 光标呈现为指示连接的指针(一只手)
3.css的flex
伸缩容器中的两个伸缩项,一个宽度已经固定,想让另一项占满整个伸缩容器,给该元素设置flex: 1;
便可
4.如何判断某个浏览器是否支持某css属性
答:有些有-webkit-前缀的就是chrome浏览器的私有属性;有-ms-前缀的就是IE浏览器私有属性
面试官:除了这个方法呢?我:不知道
5.css画三角形
6.手写动画最小时间间隔最合适是多少,为何?
(这题遇两次了。。。)
多数显示器默认频率是60HZ,即一秒刷新60次,因此理论上最小间隔使1/60*1000ms=16.7ms
7.给你一个页面,如何判断网页性能的好坏?(能够理解为哪些指标能够反映一个网页的性能)
面试现场还原:(我还真不知道如何判断,瞎说了一些带宽、响应时间啥的)我给面试官说:我知道如何优化一个网页,可是我还真不了解如何判断...
面试官:你得知道哪里很差才能优化吧?我倒...
利用 window.performance.timing
能够访问到这些属性
DNS查询耗时 = domainLookupEnd - domainLookupStart TCP连接耗时 = connectEnd - connectStart request请求耗时 = responseEnd - responseStart 解析dom树耗时 = domComplete - domInteractive 白屏时间 = domloadng - fetchStart domready时间 = domContentLoadedEventEnd - fetchStart onload时间 = loadEventEnd - fetchStart
8.promise相关的东西
9.parseInt()方法和Number()方法的区别
10.数据转为字符串的方法
11.存在隐式转换的场景
12.闭包是啥,垃圾回收机制
只答上来了引用计数,还有一个是标记清除(我发誓我真的都知道,可是当时忘记了)
13.Render Tree和CSSOM Tree的区别
15.原型链是干啥的
16.如何异步执行js代码
答:promise
问:还有呢
答:动态建立script标签(当时有点慌张了,应该把知道的都说一下的)
17.若是一个页面被访问屡次,如何优化(其实就是问防抖和节流)
答:能够采用函数防抖
问:那防抖和节流的区别是啥(也答了)
18.了解gulp和grunt吗
心里:我刚刚说了最近了解了webpack
答:不了解(笑)
总结:反正全程都是“还有呢???”应该还有一些问题,暂时想起来的就是这些,总之仍是基础知识不扎实...(菜是原罪,哭)