HTML,javascript2

153 阅读4分钟

1. 一下代码,在浏览器运行的结果是

  • shift 删除并返回第一个元素,
  • push 添加元素
  • unshift 向数组的开头添加一个元素或者更多元素
  • concat 连接两个或更多的数组,并返回结果
  • join 把数组的所有的元素放人一个字符串
  • pop 删除并返回数组的最后一个元素
  • reverse 颠倒数组中的元素顺序
  • slice 从某个已有的数组返回选中的元素
  • sort 对数组的元素进行排序
  • splice 删除元素,并向数组元素添加新元素

2. 什么是 Web Worker ?

web Worker 本质是一个线程,在UI主线程之外并发执行的线程,主要解决耗时的JS任务。

首先了解浏览器的线程模型是怎样的? 程序:计算机可以执行的代码,存在磁盘中 --- 这是静止的(比如这是买的一块地皮); 进程:把 程序 调入到内存中,等待被CPU执行 --- 这是活动的(这是在地皮上建起来的几个工厂);

线程:是CPU执行 进程 代码的基本单位 --- 相当于生产任务(这是在工厂中进行生产的生产线);

而 进程 与 线程 的关系是:进程是操作系统分配内存的基本单位,线程处于进程内部,是CPU执行代码的基本单位,一个进程中至少有一个线程,也可以有多个(就比如在一个工程内,可以有一条生产线,也可以有多条生产线),多个线程间并发执行,从宏观上看是‘同时’执行,微观上看是‘轮流’执行。

拿chrome中的线程模型举例 1.chrome 中发起HTTP请求最多可以使用6个并发线程;

2.而负责向页面中执行绘制任务(HTML/CSS/JS/事件处理代码)的只有1个线程 --- UI主线程,如果碰到耗时的代码就有问题了,解决的办法:创建一个新的线程,去执行耗时的JS任务 -- 与UI主线程并发执行

3.以下哪一项不属于浏览器Response Headers字段:

1)请求(客户端->服务端[request]) GET(请求的方式) /newcoder/hello.html(请求的目标资源) HTTP/1.1(请求采用的协议和版本号)

Accept: */*(客户端能接收的资源类型)

Accept-Language: en-us(客户端接收的语言类型) 
Connection: 
Keep-Alive(维护客户端和服务端的连接关系) 
Host: localhost:8080(连接的目标主机和端口号) 
Referer: http://localhost/links.asp(告诉服务器我来自于哪里) 
User-Agent: Mozilla/4.0(客户端版本号的名字) 
Accept-Encoding: gzip, deflate(客户端能接收的压缩数据的类型) 
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT(缓存时间)  
Cookie(客户端暂存服务端的信息) 
Date: Tue, 11 Jul 2000 18:23:51 GMT(客户端请求服务端的时间)

2)响应(服务端->客户端[response])

HTTP/1.1(响应采用的协议和版本号) 200(状态码) OK(描述信息)
Location: http://www.baidu.com(服务端需要客户端访问的页面路径) 
Server:apache tomcat(服务端的Web服务端名)
Content-Encoding: gzip(服务端能够发送压缩编码类型) 
Content-Length: 80(服务端发送的压缩数据的长度) 
Content-Language: zh-cn(服务端发送的语言类型) 
Content-Type: text/html; charset=GB2312(服务端发送的类型及采用的编码方式)
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT(服务端对该资源最后修改的时间)
Refresh: 1;url=http://www.it315.org(服务端要求客户端1秒钟后,刷新,然后访问指定的页面路径)
Content-Disposition: attachment; filename=aaa.zip(服务端要求客户端以下载文件的方式打开该文件)
Transfer-Encoding: chunked(分块传递数据到客户端)  
Set-Cookie:SS=Q0=5Lb_nQ; path=/search(服务端发送到客户端的暂存数据)
Expires: -1//3种(服务端禁止客户端缓存页面数据)
Cache-Control: no-***(服务端禁止客户端缓存页面数据)  
Pragma: no-***(服务端禁止客户端缓存页面数据)   
Connection: close(1.0)/(1.1)Keep-Alive(维护客户端和服务端的连接关系)  

Date: Tue, 11 Jul 2000 18:23:51 GMT(服务端响应客户端的时间)