前端面试题

Posted on 2022-03-25 22:36  晓晓晓渡  阅读(27)  评论(0编辑  收藏  举报

1)js

1.事件的重定向:当点击一个URL来访问一个网页X,但在内部被定向到另一页Y。

2..for循环和forEach()区别:

      forEach()在循环过程中不能对循环的内容进行增删改操作
     forEach()返回undefined,即改变原来的数组
3.js闭包:函数嵌套一个函数,子函数可以使用父函数的变量
4.js数据类型:

基本类型(单类型):除Object。 String、Number、boolean、null、undefined。

引用类型:object。里面包含的 function、Array、Date。

2)css

2.overflow:hidden,作用:溢出隐藏、清除浮动、解决外边距塌陷

      2.1overflow定义当元素内容太大时该做什么:

/* 默认值。内容不会被修剪,会呈现在元素框之外 */ overflow: visible
/* 内容会被修剪,并且其余内容不可见 */ overflow: hidden;
/* 内容会被修剪,浏览器会显示滚动条以便查看其余内容 */ overflow: scroll
/* 由浏览器定夺,如果内容被修剪,就会显示滚动条 */ overflow: auto;
/* 规定从父元素继承overflow属性的值 */ overflow: inherit;

 

 

3.一个div的各种居中:

3)vue

1.v-if和v-show区别:

       1、使用方式

 

           v-if是根据后面数据的真假,来判断DOM的添加删除等操作

 

          v-show只是在修改元素的css样式(display属性值)
      2、条件渲染

 

           v-if如果初始渲染条件为真,就渲染,反之就不渲染

 

         v-show不管初始条件是否为真,都会被渲染

 

 

 

2.vue的三种路由模式:1

      1)hasn模式,最安全的模式,因为他兼容所有的浏览器和服务器
      2)history模式,

       3)abstract模式

 

3.路由怎么传参

4.vue组件通信:    

      1)父-->子,props
      2)  子-->父,  $emit自定义事件
      3)vuex,全能
      4)Session Storage和Local Storage
      5)  $bus , 思路是在全局挂载一个实例,通过这个实例里的事件派发和事件监听实现跨组件通信,设计模式叫做观察者模式。
             1--this.bus.bus.emit(a,b)----第一个参数是事件名称,第二个参数是要传递的数据
             2--this.bus.bus.on(a,fun(b){})   ------

4)Es6

1.新特性:  const 和 let,解构赋值,模板字符串,函数的扩展,数组的扩展,对象的扩展,Generator与async await,Promise,Symbol,Class

 

2.箭头函数和function函数区别:

             1)箭头函数的this永远指向其上下文的 this,任何方法都改变不了其指向,如call(), bind(), apply()

             2)普通函数的this指向调用它的那个对象

             3)箭头函数不绑定arguments,取而代之用rest参数…解决

5)http

1.TCP连接的3次握手和4次挥手

      3次握手:第一次握手:客户端发送一个带SYN的TCP报文到服务器,表示客户端想要和服务器端建立连接。
                      第二次握手:服务器端接收到客户端的请求,返回客户端报文,这个报文带有SYN和ACK确认标示,访问客户端是否准备好。
                      第三次握手:客户端再次响应服务端一个ACK确认,表示我已经准备好了。

     4次挥手: 第一次挥手:TCP发送一个FIN(结束),用来关闭客户端到服务器端的连接。
                      第二次挥手:服务器端收到这个FIN后发回一个ACK确认标示,确认收到。
                      第三次挥手:服务器端发送一个FIN到客户端,服务器端关闭客户端的连接。
                      第四次挥手:客户端发送ACK报文确认,这样关闭完成。

 

Copyright © 2024 晓晓晓渡
Powered by .NET 8.0 on Kubernetes