九月面试题总结
- 下列html tag中属于块级元素的有?(span,ol,img,ul)
- 浮动元素引起的问题和解决方法?
- document.write和innerHTML的去别?
- 以下可以被子元素继承的属性是?(font-size,margin,padding,color)
- 如何在页面实现一个圆形的可点击区域?
- ,有一个已知宽是14px,高是15px,css中width:200px;height:200px;请问这个矩形渲染出来的面积是多少?
- 下列布局在页面的左右宽度比是多少?
//css
.flex{
display:flex;
width:200px;
height:100px;
}
.left{
flex 3 0 50px;
background:red;
}
.right{
flex:2 0 100px;
background:blue;
}
//html
<div class="flex">
<div class="left"></div>
<div class="right"></div>
</div>
- Function.prototype的原型链最终指向哪里?
- 如何实现浏览器多个tag之间的通信?
- 跨域请求中,主要设置那个属性为true才能携带cookie信息?
- 不借助临时变量,将两个整数交换,输入a = 2,b = 4,输出 a = 4,b = 2
- 下列代码输出的结果是什么?
for(var i = 0; i < 5; i++){
setTimeout(() => {
console.log(i);
},i*100)
}
- 箭头函数和function有什么区别?
- 下列代码块的执行结果是什么?
var a = 1;
function fn1(){
console.log(this.a);
}
const fn2 = () => {
console.log(this.a);
}
fn1();
fn2();
- promise的状态有哪些?
- 下列程序的运行结果是什么?
console.log(1);
new Promise((resolve,reject) => {
reject();
resolve();
}).then(function(){
console.log(2);
},function(){
console.log(3);
});
console.log(4);
-
js对象的深度克隆代码实现?(手写出具体实现代码)
-
var arr = [1,20,11,7,7,66,…],数组长度不定且元素类型全部为number类型,手写对arr的去重代码,并从小到大排序。
-
label的作用是什么?怎么用?
-
有AB两个div,高宽未知,A为B父级,如何实现B相对于A上下左右居中?
-
如何用css实现一个三角形?
-
谈一谈什么是外边距合并?
-
如何将字符串转换成数字?
-
已知ID的input输入框,如何获取这个输入框的值?
-
写一个function,清除字符串前后空格。
-
介绍一下函数节流和防抖,如何实现?写出相应的代码。
-
什么是强缓存和协商缓存?
-
png,jpg,gif解释一下这些图片格式,分别什么时候用,有没有了解过webp?
-
介绍一下px,pt,em,rem,vw。
-
web应用从服务器主动推送Data到客服端有哪些方式?
-
说说对AMD和CommonJS的了解。
-
描述一下在地址栏输入一个URL到页面渲染完成,这个过程中发生了什么?(越详细越好)
-
简述一下对HTML语义化的理解?
-
为什么最好把css的link标签放到head之间?为什么最好把JS的script标签放到body之后,有没有例外?
-
什么是渐进式渲染?(progressive rendering)
-
描述一下JS的原型,原型链?有什么特点?
-
有数组 var arr = [1,[2],[3,[4,5]],6,7],如何将arr扁平化?
-
使用 var let const声明变量有什么区别?
-
不用loop循环,创建一个长度为100的数组,且每个元素的值等于数组的index。
-
如何解决跨域的问题?
**
- 描述一下cookies,sessionStorage,localStorage的区别?
- 下列程序会alert出什么结果?
function fn(){
this.a = 0;
this.b = function (){
alert(this.a);
}
}
fn.prototype = {
b:function(){
this.a = 20;
alert(this.a);
},
c:function(){
this.a = 30;
alert(this.a);
}
}
var myFun = new fn();
myFun.b();
myFun.c();
- 下列程序会输出什么结果?
var name = 'world';
(function(){
if(typeof name === 'undefuned'){
var name = 'jack';
console.log('Goodbye' + name);
}else{
console.log('Hello'+name);
}
})();
- 下列程序会输出什么结果?
for(var i = 0; i < 3; i++){
setTimeout(() =>{
console.log(i);
},0)
}
- 列程序会输出什么结果?
var user = {
const:1,
getConst:function(){
return this.const;
}
};
console.log(user.getConst());
var func = user.getConst;
console.log(func());
- 怎样将document.childNodes获取到的伪数组转换成标准数组?
- css如何实现背景渐变效果?
- display:none与visibility:hidden的区别是什么?
- 什么是外边距重叠?
- 怎样通过flex布局实现水平垂直居中?
有5张图片p1,p2,p3,p4,p5, 如何实现以下需求?
1):一次加载一张图片,第一张图片加载完了在加载下一张,直至5张图片都加载完成如何输出“加载完成”。
2):直接加载5张图片,直至5张图片都加载完成输出“加载完成”。
vue的面试总结
- 描述一下为什么vue渲染列表时为什么需要key?
- vue的双向数据绑定原理是什么?
- 组件之间如何通信,有多少种通信方式?
- vue生命周期的理解,每个周期分别可以做什么操作?
- vue 路由嵌套如何实现?
- vue 如何实现动态路由?如何通过路由传递参数?有什么区别?
- router-link和a标签的区别?
- 谈谈router的路由守卫?
- vuex的mutations和actions的区别?
- vue-router的hash模式和History模式有什么区别?
JS的相关面试题
- JS的数据类型有哪些?
- null和undefined的区别是什么?
- null是什么类型?
- 深浅拷贝的区别?如何实现?
- 函数的防抖与节流如何实现?
- 数组的相关方法
- call,apply,bind的区别?
- 原型与原型链。
- 判断数据类型的方法,object.prototype.tostring.call()的实现方法?
- 如何将字符串转换成数组?
- ES6的新特性。
- async 和 await 如何使用?
~~
~~
CSS相关面试题
**
- 如何实现元素水平垂直居中?
- CSS3动画,过度效果。
- 描述盒子模型,标准模式和怪异模式。
- css选择器分别是什么?权重排序。
- position有哪些属性?如何使用?
- position:absolute和position:relative的区别?
- css3新增的新特性。
- 解释一下CSS3的flexbox(弹性盒布局模型),以及适用场景?
- 什么是响应式设计?响应式设计的基本原理是什么?如何兼容低版本的IE?
HTML相关面试题
**
- HTML5文档的第一行代码是什么?为什么?
- html5新增哪些新标签?
- Canvas和SVG的区别?
- HTML结构如何设计有利于网站的SEO?
- 描述一下HTML的meta标签如何配置?
- 如何禁止用户在移动端放大页面?
答案稍后附上
持续更新…