简答题(每题3分)
- link 和@import 有什么区别?
- 伪元素和伪类的区别?
- CSS盒子模型有哪几部分组成,并画出盒子模型
- 行内元素和块级元素有什么区别,分别写出至少5个元素
- 写出CSS权重优先级
- 浅拷贝和深拷贝的区别
- var,let,const的区别
- 什么是原型链?
- 对闭包的理解,有哪些优缺点
- JS 单线程还是多线程,如何显示异步操作
- JS 哪些操作会造成内存泄露,如何避免
- new一个对象具体干了什么呢?
- 异步加载有哪些实现方式
- 常见的浏览器内核有哪些?
- localstorge,cookies,sessionstorge的区别
- css link标签最好放在哪里,js script标签最好放在哪里,为什么
- vue双向数据绑定原理
- vue生命周期有哪些
- vue打包后生成的app,vendor,manifest3个文件是什么
- 简单说一下Promise,有哪些特点
- 说出5个ES6新特性,哪些浏览器兼容ES6,不兼容的如何解决
- 从输入URL到浏览器渲染完成这中间是如何一步步实现的
- http和https有什么区别
- 原生js 的ajax请求有哪几个步骤
- 哪几种情况会造成跨域,如何解决跨域
应用题(每题3分)
- 用js 写一个冒泡排序
- 有一个数组var arr = [1,2,3,1,5,3,7,2,4,1,3],写出程序计算出每个元素出现的次数
- 写一个方法,要求递归求出1-100之间所有奇数的和
- 前端性能优化有哪些,如何减低页面加载时间?
- 常见Web攻击技术,如何解决?
综合编程题(10分)
写出一个抽奖页面,要求如下
- 有100个人参加抽奖,每次抽出一个人,不能重复,必须每个人都要抽中奖
- 前面10次抽奖要选中固定的10个人,每次就从这10人中随机抽取一人,不能重复
- 从第11次开始就从剩余的90人当中抽奖,不能重复,直到抽奖结束
- 点击按钮开始抽奖时,页面上需要显示名字滚动的信息,然后按结束时才显示中奖人;
- 已经中过奖的人不能再次抽奖
关注公众号:老王搞BUG,回复 “web面试题”,获取答案