js重新学习记录

JS里的类型有null, undefine, string, number, boolean, symbol(ES6新增)和object。其中前6个是基础数据类型,而object是复杂数据类型。


Ajax技术核心就是 XMLHttpRequest对象。
Ajax技术的工作原理:可以分成3步
1.创建Ajax对象:var xhr = new XMLHttpRequest();
2.xhr 发送请求:xhr.open('get','test.html','true');
                          xhr.send();
3.xhr获取响应:
                          xhr.onreadystatechange = function(){
                                   if(xhr.readystate == 4){//请求的状态码
                                                       /*
                                                                   0:请求还没有建立(open执行前)
                                                                   1:请求建立了还没发送(执行了open)
                                                                    2:请求正式发送(执行了send)
                                                                   3:请求已受理,有部分数据可以用,但还没有处理完成
                                                                 4:请求完全处理完成
                                                           */
                                         alert(xhr.responseText);//返回的数据
                                     }
                             }

js的内置对象:


函数声明
1
2
3
function sum(a,b){
     return a+b
}
函数表达式
1
2
3
var sum =  function (a,b){
     return a+b
}
Function构造函数【从技术角度讲,这是一个函数表达式】
1
var sum =  new Function( 'a' , 'b' , 'return a+b' ) //不推荐使用,影响函数解析性能


数据类型 转换为true的值 转换为false的值
Boolean true false
String  任何非空字符串 空字符串
Number 任何非零数字值(包括无穷大) 0和Null
Object 任何对象 null
Undefined   Undefined


扫描二维码关注公众号,回复: 5474504 查看本文章
alert($(window).height()); //浏览器当前窗口可视区域高度 
alert($(document).height()); //浏览器当前窗口文档的高度 
alert($(document.body).height());//浏览器当前窗口文档body的高度 
alert($(document.body).outerHeight(true));//浏览器当前窗口文档body的总高度 包括border padding margin 
alert($(window).width()); //浏览器当前窗口可视区域宽度 
alert($(document).width());//浏览器当前窗口文档对象宽度 
alert($(document.body).width());//浏览器当前窗口文档body的高度 
alert($(document.body).outerWidth(true));//浏览器当前窗口文档body的总宽度 包括border padding margin 



1
function checkState(){
1
  alert( "liyuming" ); 
1
  }
1
  window.setTimeout(checkState(), 10000);  //立即被调用 

1
window.setTimeout(checkState, 10000);  // 10s后被调用 
1
window.setTimeout( "checkState()" , 10000);  //10s后被调用 注意和第一个的区别 有引号

Promise对象只有三种状态。
异步操作“未完成”(pending)
异步操作“已完成”(resolved,又称fulfilled)
异步操作“失败”(rejected)
这三种的状态的变化途径只有两种。

异步操作从“未完成”到“已完成”
异步操作从“未完成”到“失败”。
这种变化只能发生一次,一旦当前状态变为“已完成”或“失败”,就意味着不会再有新的状态变化了。因此,Promise对象的最终结果只有两种。

异步操作成功,Promise对象传回一个值,状态变为resolved。
异步操作失败,Promise对象抛出一个错误,状态变为rejected。

参考链接为:http://javascript.ruanyifeng.com/advanced/promise.html#toc9


说一说常见的请求头和相应头都有什么呢?
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-cache(服务端禁止客户端缓存页面数据)  
    Pragma: no-cache(服务端禁止客户端缓存页面数据)   
    Connection: close(1.0)/(1.1)Keep-Alive(维护客户端和服务端的连接关系)  

    Date: Tue, 11 Jul 2000 18:23:51 GMT(服务端响应客户端的时间)
在服务器响应客户端的时候,带上Access-Control-Allow-Origin头信息,解决跨域的一种方法。


猜你喜欢

转载自blog.csdn.net/zzjj6543212/article/details/80492008