发表于: 2017-04-27 20:36:52

1 1103


今天完成的事情:

复习了JavaScript 操作DOM和CSS 修改样式

HTTP协议学习,

Ajax入门学习,

了解常见 HTTP 状态码

明天计划的事情:

了解异步请求如何实现,

如何配置nginx

了解nginx 反向代理 垮域

遇到的问题:

  

1.Ajax与服务器端相关内容的,学习起来有点找不到北的感觉,感觉只有在要用到相关内容再查询API

2.异步模式:"异步模式"非常重要。在浏览器端,耗时很长的操作都应该异步执行,避免浏览器失去响应,最好的例子就是Ajax操作。在服务器端,"异步模式"甚至是唯一的模式,因为执行环境是单线程的,如果允许同步执行所有http请求,服务器性能会急剧下降,很快就会失去响应。

收获:计算机基础知识真的挺重要的,以前觉得前端就前端,服务器端关我啥事。但是学习中发现前端也开始涉及越来越多后端的东西,学得越多,让自己的价值越大

 超文本传输协定英文HyperText Transfer Protocol缩写HTTP)是网际网路上应用最为广泛的一种网路协议。设计HTTP最初的目的是为了提供一种发布和接收HTML页面的方法。通过HTTP或者HTTPS协议请求的资源由统一资源标识符(Uniform Resource Identifiers,URI)来标识。

 XMLHttpRequest 是一个API, 它为客户端提供了在客户端和服务器之间传输数据的功能。它提供了一个通过 URL 来获取数据的简单方式,并且不会使整个页面刷新。这使得网页只更新一部分页面而不会打扰到用户。XMLHttpRequest 在 AJAX 中被大量使用。

收获: 

老大在了解学员学习情况时,问我什么是"三次握手",之前对于TCP的三次握手和四次分手模模糊糊,对于其中的细节更是浑然不知,我只回答了前两次握手,却没有把最后一次说出来,这次查找资料弄明白了什么是"三次握手"以及TCP建立连接时,为什么要进行三次握手?

了解什么是TCP 协议?

传输控制协议英语:Transmission Control Protocol,缩写为 TCP)是一种面向连接的、可靠的、基于字节流传输层通信协议,由IETF的RFC 793定义。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,用户数据报协议(UDP)是同一层内另一个重要的传输协议。的计算机网络OSI模型中,它完成第四层传输层所指定的功能,用户数据报协议(UDP)是同一层内另一个重要的传输协议。 

"三次握手"就像 双方(客户端和服务端) 打电话的例子:首先你要确认对方是你要找的人,然后对方也要确认你是他要找的人,最后你确认,双方开始通话

三次握手:

  客户端 : 你好,我是客户端,你听得到我在说话吗?

  服务端 : 听到了,我是服务端,你听到我在说话吗?

  客户端 : 嗯,听到了, 建立连接,开始聊天!

 

TCP作为一种可靠传输控制协议,其核心思想:既要保证数据可靠传输,又要提高传输的效率,而用三次恰恰可以满足以上两方面的需求!

那TCP为什么非要进行三次连接呢?两次或四次为什么就不行。

两次握手:

  客户端 : 你好,我是客户端,你听得到我在说话吗?

  服务端 : 听到了,我是服务端,你听到我在说话吗?

因为两次握手不能保证成功率,无法保证客户端在服务端做出响应被客户端接受

四次握手:

  客户端 : 你好,我是客户端,你听得到我在说话吗?

  服务端 : 听到了,我是服务端,你听到我在说话吗?

  客户端 : 嗯,听到了, 建立连接,开始聊天!


四次握手太浪费资源?降低了传输的效率。

  

HTTP 通信协议:HTTP 客户端发起请求并创建端口,HTTP 服务器在端口监听客户端的请求。

HTTP 服务器在收到请求后则返回状态和所请求的内容。

 

 

了解常见 HTTP 状态码,针对出现的状况解决问题:

200 请求成功,一般用于 GET 和 POST 方法 OK

301 资源移动。所请求资源自动到新的 URL,浏览器自动跳转至新的 URL Moved Permanently

304 未修改。所请求资源未修改,浏览器读取缓存数据 Not Modified

400 请求语法错误,服务器无法解析 Bad Request

403 禁止访问 Forbidden

404 未找到资源,可以设置个性“404页面” Not Found

500 服务器内部错误 Internal Server Error

502 网关错误 Bad gateway

503 服务不可用 Service unavailable

504 网关超时 Gateway timeout


 

 

return的用法是什么?若用在for循环中,还会执行下一次循环吗?break ,continue, return这三个关键字的用法是什么呢?

return语句就是用于返回执行指定函数之后的值。return语句只能出现在函数体内 。当执行return语句时, 所以retuen若用在for循环中,即使函数主体中还有其他语句,函数执行也会停止!不会执行下一次循环 。


break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch语句。 

由于它是用来退出循环或者switch语句,所以只有当它出现在这些语句时,这种形式的break语句才是合法的。 

如果一个循环的终止条件非常复杂,那么使用break语句来实现某些条件比用一个循环表达式来表达所有的条件容易得多。 

for (var i = 1; i <= 10; i++) {

   if (i == 6) {

       break;

   }

   document.write(i);

}  

输出结果:12345。 当i=6 时,遇到 break 直接退出 for 这个循环。 

 

continue语句和break语句相似。不同的是,它是跳过当前循环,而是开始循环的一次新迭代。 

continue语句只能用在while语句、do/while语句、for语句、或者for/in语句的循环体内,在其它地方使用都会引起错误! 

for (var i = 1; i <= 10; i++) {

   if (i == 6) continue;

   document.write(i);

输出结果:1234578910。 当i=6时,直接跳过本次for循环。继续下次执行。 



返回列表 返回列表
评论

    分享到