web前端基础知识汇总- 面试4

107 阅读4分钟

1. css3怎么解决溢出问题?

利用 overflow 和 text-overflow 属性 在设定的样式下隐藏

text-overflow属性,值为clip是修剪文本;ellipsis为显示省略符号来表被修剪的文本;string为使用给定的字符串来代表被修剪的文本。overflow: hidden

2.float(浮动)的元素,display是什么

display为block

3. 三栏布局的实现方式

4. 说一说bootstrap

zhuanlan.zhihu.com/p/35223898

Bootstrap是最受欢迎的HTML、CSS和JS框架,用于开发响应式布局、移动设备优先的Web项目

5. 说一说  jsonp ?

  • 首先,因为ajax无法跨域,然后开发者就有所思考

  • 其次,开发者发现, src属性是可以跨域的
    把跨域服务器写成 调用本地的函数 ,回调数据回来不就好了?

  • json刚好被js支持(object

  • 调用跨域服务器上动态生成的js格式文件(不管是什么类型的地址,最终生成的返回值都是一段js代码

  • 这种获取远程数据的方式看起来非常像ajax,但其实并不一样
    便于客户端使用数据,逐渐形成了一种非正式传输协议,人们把它称作JSONP

  • 传递一个callback参数给跨域服务端,然后跨域服务端返回数据时会将这个callback参数作为函数名来包裹住json数据即可。

segmentfault.com/a/119000000…

6. vue双向绑定原理

vue数据双向绑定是通过数据劫持结合发布者-订阅者模式的方式来实现的。利用了 Object.defineProperty() 这个方法重新定义了对象获取属性值(get)和设置属性值(set)。

7.  OSI七层模型

应用层:文件传输,常用协议HTTP,snmp,FTP ,

表示层:数据格式化,代码转换,数据加密,

会话层:建立,解除会话

传输层:提供端对端的接口,tcp,udp

网络层:为数据包选择路由,IP,icmp

数据链路层:传输有地址的帧

物理层:二进制的数据形式在物理媒体上传输数据

8.为什么TCP要进行四次挥手呢?

因为是双方彼此都建立了连接,因此双方都要释放自己的连接,A向B发出一个释放连接请求,他要释放链接表明不再向B发送数据了,此时B收到了A发送的释放链接请求之后,给A发送一个确认,A不能再向B发送数据了,它处于FIN-WAIT-2的状态,但是此时B还可以向A进行数据的传送。此时B向A 发送一个断开连接的请求,A收到之后给B发送一个确认。此时B关闭连接。A也关闭连接。

9.进程间的通信方式有哪些

1、无名管道:半双工的通信方式,数据只能单向流动且只能在具有亲缘关系的进程间使用

2、高级管道:将另一个程序当作一个新的进程在当前程序进程中启动,则这个进程算是当前程序的子进程,

3、有名管道,:也是半双工的通信方式,但是允许没有亲缘进程之间的通信

4、消息队列:消息队列是有消息的链表,存放在内核中,并由消息队列标识符标识,消息队列克服了信号传递信息少,管道只能承载无格式字节流以及缓冲区大小受限的缺点

5、信号量:信号量是一个计数器,可以用来控制多个进程对共享资源的访问,它常作为一种锁机制,防止某进程正在访问共享资源时,其他进程也访问该资源,

6、信号:用于通知接受进程某个事件已经发生

7、共享内存:共享内存就是映射一段能被其他进程所访问的内存。这段共享内存由一个进程创建,但是多个进程可以访问,共享内存是最快的IPC 方式,往往与其他通信机制配合使用

8、套接字:可用于不同机器之间的进程通信