Network - HTTP 历史及各版本对比
HTTP 是基于 TCP/IP 协议的应用层协议. 不涉及数据包 package 传输, 主要规定客户端和服务器之间的通信格式, 默认使用 80 端口.
HTTP/0.9
1991年发布, 极其简单, 只有 GET 方法, 返回数据只能是 HTML 字符串
HTTP 是基于 TCP/IP 协议的应用层协议. 不涉及数据包 package 传输, 主要规定客户端和服务器之间的通信格式, 默认使用 80 端口.
1991年发布, 极其简单, 只有 GET 方法, 返回数据只能是 HTML 字符串
状态码: 由 3 位数字和原因短语组成(200 OK).
其中第一位数字代表相应类型, 响应类型分为5种
先看几个例子 (基于node 8.4环境的测试)
|
|
setTimeout() 和 setInterval() 可以用来实现延时 定时等功能, 但是 JavaScript 是单线程工作, 不能同时执行多个操作 , 只能按照队列先后顺序执行, 定时器仅仅是计划代码在未来执行什么时间执行, 但是这个时间是不能保证的(不能保证定时器延迟), 是不精确的.
基础数据类型: undefined, null, Number, String, Boolean, Symbol (ES6+)
引用数据类型: Object(Object, Array, Date, RegExp, Function)
typeof
适合用来检测一个对象是否已经定义或者是否已经赋值
typeof
对于基本数据类型可以正确判断其类型, 对于引用数据类型, 只会返回’object’, 而不是其正确类型, null 会返回’object’, 因为null本质是指向空对象的指针, undefined 会返回’undefined’
JavaScript 常被描述为一种基于原型的语言 (prototype-based language)——每个对象拥有一个原型对象 (prptotype),对象以其原型为模板、从原型继承方法和属性。原型对象也可能拥有原型,并从中继承方法和属性,一层一层、以此类推。这种关系常被称为原型链 (prototype chain),它解释了为何一个对象会拥有定义在其他对象中的属性和方法. 这种继承模型提供了一个强大而可扩展的功能系统。
普通函数中的this:
1.this 总是代表它的直接调用者(js的this是执行上下文), 例如 obj.func ,那么func中的this就是obj
2.在默认情况(非严格模式下,未使用 ‘use strict’),没找到直接调用者,则this指的是 window (约定俗成)
3.在严格模式下,没有直接调用者的函数中的this是 undefined
4.使用call,apply,bind(ES5新增)绑定的,this指的是 绑定的对象
React 将 this
关键字绑定到组件的上下文
|
|