2.22

1. 常见的HTTP状态码有哪些,分别代表什么意思

http状态码的作用是服务器告诉客户端当前请求响应的状态,通过状态码就能判断和分析服务器的运行状态。

以1开头

1xx: 指示信息,表示请求已接收,继续处理操作。这类响应是临时响应,只包含状态行和某些可选的响应头信息,并以空行结束

  • 100:常用于post大数据传输,若服务器同意则继续上传post数据
  • 101:Switching Protocols切换协议。服务器根据客户端的请求切换协议。只能切换到更高级的协议.如切换到HTTP的新版本协议

以2开头

2**:成功,操作被成功接收并处理

  • 200:请求成功,请求所希望的响应头或数据体将随此响应返回,常用于get或post,是最常见的状态码。
  • 201:Created已创建。成功请求并创建了新的资源
  • 202:Accepted已接受。已经接受请求,但未处理完成
  • 203:Non-Authoritative Information非授权信息。请求成功。但返回的meta信息不在原始的服务器,而是一个副本
  • 204:No Content无内容。服务器成功处理,但未返回内容。在未更新网页的情况下,可确保浏览器继续显示当前文档

以3开头

3**:重定向,需要进一步的操作以完成请求

  • 301:Moved Permanently永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替(302、303也为重定向的作用,其中302表示资源只是临时被移动,客户端应继续使用原有URI)
  • 304:Not Modified未修改。所请求的资源未修改,服务器返回此状态码时表示服务端的资源与客户端上一次请求的一致,客户端只需要使用上一次缓存的资源即可

以4开头

4**:客户端错误,请求包含语法错误或无法完成请求

  • 400:客户端请求的语法错误,服务器无法解读
  • 403:Forbidden服务器理解请求客户端的请求,但是拒绝执行此请求
  • 404:Not Found服务器无法根据客户端的请求找到资源(网页)
  • 405:禁用请求中指定的方法
  • 408:(请求超时)服务器等待请求时发生超时POST

以5开头

5**:
服务器错误,服务器在处理请求的过程中发生了错误

  • 500: (服务器内部错误)请求资源找到了,但服务器内部发生了不可预估的错误
  • 501: Internal Server Error:服务器遇到一个错误,使其无法对请求提供服务

2. 如何判断this指向

  • 默认绑定:非严格模式下,在未设置this的自调用函数中,通常this 的值默认指向全局对象(如windows)。在严格模式下,this将保持他进入执行环境时的值。如果 this 没有被执行环境定义,那它将保持为undefined

  • 隐式绑定:当一个函数是隶属于某个对象来调用的,那么就会触发隐式绑定规则,函数内的this指向的就是绑定到这个对象的上下文。this由调用者提供,由调用函数的方式来决定。

  • 显示绑定:call、apply、bind方法能够使调用函数的时候替换函数内的this。如 a.bind(someObject)

  • 构造函数:发生构造函数调用时,它的this被绑定到正在构造的新对象。手动返回其他对象时,则绑定到返回的这个对象上。

通常来说this一旦被调用便不再允许修改,构造函数>显式绑定>隐式绑定>默认,四者的规则顺序可以准确地判断到this的指向。

3. css样式权重以及计算规则

样式权重

第一优先级:!imortant是无条件优先的属性,它会覆盖掉页面任何位置定义的元素样式

第一等选择器:内联样式,如:style="color:red;",权值为1000.(该方法会造成css难以管理,所以不推荐使用)

第二等选择器:ID选择器,如:#header,权值为0100

第三等选择器:类、伪类、属性选择器如:bar, 权值为0010

第四等选择器:标签、伪元素选择器,如:div ::first-line 权值为0001

通配符,子选择器,相邻选择器等。如*,>,+, 权值为0000

继承的样式没有权值。

计算方法

每一等级的选择器权值*个数,得出一个四元组,通过逐一比较四元组的大小选择权值最大的选择器。当权值相同的时候,往往后者会优先进行渲染,覆盖前者样式。因此若样式的引用次序不同时,会因css的层叠样式的关系显示影响行间、内部样式、外部样式之间的显示。

posted @ 2022-02-26 06:08  凉将  阅读(32)  评论(0编辑  收藏  举报