百度前端一面

1. 说一下自己最熟悉的一个项目,在做项目时遇到了什么问题,是怎么解决的;

2. webpack的配置项有哪些;

3. webpack3和webpack4的区别;

4. vue-router有几种方式切换路由,如何监听路由变化;

两种方式:声明式和编程式,声明式为 ,编程式为this.$route.push({path: url, id: 123})这种形式

监听路由变化,watch监听$route,一旦发生变化就执行相应函数

watch: {
  $route: function () {
  }
}

5. @import和link的区别,加载顺序和渲染时机是怎样的;

6. 引入css样式到html中有几种方式;

7. vuex如何定义一个局部的store,如何使用局部的store修改全局变量

下面开始问基础:

1. 写一个div,宽度为100px, 高度为100px, 背景色为红色,要求点击的时候有一个过渡效果(宽高为200px,当时使用transition: all 0.2 linear; width: 200px; height: 200px;,但面试官问有没有其他的方法);

2. 接着第一题,要求在鼠标放上去(原来所有的元素都有hover)的时候,div在放大的时候,同时旋转起来;



	

3.行内元素和块级元素的区别;

4. 实现一个块级元素的水平垂直居中;

5. 说一下常用排序算法的时间复杂度、空间复杂度、最坏时间复杂度;

6. 写一下回文数字的判断方法

7. 说出下面程序的执行结果

async function async1() {
    console.log("async1 start");
    await  async2();
    console.log("async1 end");// 执行async2之后, 会将其后的代码加入任务队列, 与Promise加入不同一队列
}
async  function async2() {
   console.log( 'async2');
   new Promise(function (resolve) {
   	console.log('promise1')
   	resolve()
   })
   .then(function () {
   	   	console.log('promise2')
   })
}
console.log("script start");
setTimeout(function () {
    console.log("settimeout");
},0);
async1();
new Promise (function (resolve) {
    console.log("promise3");
    resolve();
}).then(function () {
    console.log("promise4");
});
console.log('script end');

 

你可能感兴趣的:(面试)