(持续更新中。。。)
前端 / 计算机网络
-
React 特点:面向数据编程,React 最早起源于Facebook
-
JSX(JavaScript XML)是js内定义的一套XML语法,最终被解析成js。在JSX中可以将HTML于JS混写。如:
ReactDOM.render( <div> <h1>{ 1+1}</h1> //JavaScript表达式由{}表示 </div> , document.getElementById('example') );
-
React之所以速度快,是因为其独特的特征——虚拟DOM(Document Object Model),跨浏览器兼容
虚拟DOM顾名思义不是真实的DOM,它不需要浏览器的DOM API支持。虚拟DOM是在DOM的基础上建立一个抽象层,其实质是一个JavaScript对象,当数据和状态发生了变化,都会被自动高效的同步到虚拟DOM中,最后再将仅变化的部分同步到DOM中。 -
组件(Component)是react的核心,或者说是基于组件化思考。一个完整的react应用是由若干个组件搭建起来的,每个组件有自己的数据和方法,组件具体如何划分,需要根据不同的项目来确定。组件的特征是可复用,可维护性高。
Component就像个状态机(State Machine),
① state (可变的):React 里,只需更新组件的 state,然后根据新的 state 重新渲染用户界面(不要操作 DOM)。
② props (不可变):state 和 props 主要的区别在于 props 是不可变的,比如子组件只能通过 props 来传递数据。 -
组件的生命周期可分成三个状态:
①Mounting:已插入真实 DOM
②Updating:正在被重新渲染
③Unmounting:已移出真实 DOM
-
-
cookie 和 session 区别,既然 session 比 cookie 更好,那只用 session 可以吗?
常用的会话跟踪技术是Cookie与Session
Cookie通过在客户端记录信息确定用户身份 , Cookie机制是通过检查客户身上的“通行证”来确定客户身份
Session通过在服务器端记录信息确定用户身份, Session机制就是通过检查服务器上的“客户明细表”来确认客户身份
不能只有session,应用场景不同,安全性高的需要用session,不想影响服务器性能的,或者没有必要用session的(用户登陆)用cookies。 -
http 缓存知道吗?
浏览器第一次向一个web服务器发起http请求后,服务器会返回请求的资源,并且在响应头中添加一些有关缓存的字段如:Cache-Control、Expires、Last-Modified、ETag、Date等等。之后浏览器再向该服务器请求该资源就可以视情况使用强缓存和协商缓存。更多 -
keep-alive (Http长连接)
HTTP 协议的 长连接 意图在于连接复用,在同一个连接上串行方式传递请求-响应数据,通过设置HTTP的Connection Header来决定的,而且是需要两边都设置才有效。http1.1默认长连接。长连接并不是永久连接的。如果一段时间内没有请求,这个长连接就会被关闭。具体的是可以在header当中配置参数: keepalive_timeout,Content-Length,Transfer-Encoding传输编码。
-
STP和SMTP的区别
SMTP:简单邮件传输协议
STP: 交换机与交换机物理上连接成一个环路的技术。 -
1、输入网址
2、浏览器查找域名的 IP 地址(DNS域名解析)
3、TCP连接
4、浏览器向 web 服务器发起一个http请求
5、服务器处理请求,并返回响应报文
6、浏览器展示HTML(浏览器页面渲染)
7、断开TCP连接 -
拿到 http 响应后,怎么渲染页面,html 的组成,js、css 这些静态文件是存在哪里?
1、解析文档构建DOM树(三个部分:HTML/XHTML/SVG,CSS,JavaScript)
2、构建渲染树
3、布局与绘制渲染树