专项练习18

目录

一、选择题

    1、下列选项中,()不是网页中的事件

    2、下面有关浏览器中使用js跨域获取数据的描述,说法错误的是?

    3、请问以下程序的输出是

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


一、选择题

1、下列选项中,()不是网页中的事件

A、onclick

B、onmouseover

C、onsubmit

D、onpressbutton

正确答案:D        你的答案:C

解析:

(1)js中存在的事件

  • onclick:元素被单击时触发
  • onmouseover:鼠标移动到指定元素时触发
  • onsubmit:提交表单时触发

(2)js 中,不存在onpressbutton事件


2、下面有关浏览器中使用js跨域获取数据的描述,说法错误的是?

A、域名、端口相同,协议不同,属于相同的域

B、js可以使用jsonp进行跨域

C、通过修改document.domain来跨子域

D、使用window.name来进行跨域

正确答案:A

解析:

(1)协议、域名、端口都相同才算同域

(2)jsonp由两部分组成:回调函数和数据

  • 回调函数是接收到响应时应该在页面中调用的函数,其名字一般在请求中指定 
  • 数据是传入回调函数中的JSON数据
  • 优点:能够直接访问响应文本,可用于浏览器与服务器间的双向通信
  • 缺点:JSONP从其他域中加载代码执行,其他域可能不安全,难以确定JSONP请求是否失败

(3)document.domain

  • 将页面的document.domain设置为相同的值,页面间可以互相访问对方的JavaScript对象
  • 注意:不能将值设置为URL中不包含的域,松散的域名不能再设置为紧绷的域名

3、请问以下程序的输出是
function Foo(){
     var i=0;
     return function(){
         document.write(i++);
     }
}
var f1=Foo(),
f2=Foo();
f1();
f1();
f2();

A、010

B、012

C、000

D、011

正确答案:A        你的答案:C

解析:

(1)考点是闭包,其最大用处有两个

  • 一个是可以读取函数内部的变量
  • 另一个是让这些变量的值始终保持在内存中

(2)这里的局部变量 i,对 f1()、f2() 来说都是全局变量,但是 f1() 的 i 跟 f2() 的 i 又是相互独立的,f1() 每执行一次,f1() 的 i 就加一,f2() 每次执行一次,f2() 的 i 就加一,但是相互之间不影响

(3)f1 和 f2 有不同的内存空间

(4)更多参考

闭包 - JavaScript | MDN闭包(closure)是一个函数以及其捆绑的周边环境状态(lexical environment,词法环境)的引用的组合。换而言之,闭包让开发者可以从内部函数访问外部函数的作用域。在 JavaScript 中,闭包会随着函数的创建而被同时创建。https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Closures


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

A、Referer

B、Connection

C、Content-Type

D、Server

正确答案:A        你的答案:C

解析:

(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 Jul2000 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: 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 服务端响应客户端的时间

猜你喜欢

转载自blog.csdn.net/qq_51478745/article/details/131522090