您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 其它文档 > JavaScript中7
JavaScriptJavaScript浏览器目前主流的浏览器分这么几种:IE6~11:国内用得最多的IE浏览器,历来对W3C标准支持差。从IE10开始支持ES6标准;Chrome:Google出品的基于Webkit内核浏览器,内置了非常强悍的JavaScript引擎——V8。由于Chrome一经安装就时刻保持自升级,所以不用管它的版本,最新版早就支持ES6了;Safari:Apple的Mac系统自带的基于Webkit内核的浏览器,从OSX10.7Lion自带的6.1版本开始支持ES6,目前最新的OSX10.11ElCapitan自带的Safari版本是9.x,早已支持ES6;Firefox:Mozilla自己研制的Gecko内核和JavaScript引擎OdinMonkey。早期的Firefox按版本发布,后来终于聪明地学习Chrome的做法进行自升级,时刻保持最新;JavaScript浏览器国内外pc浏览器及移动端浏览器对新标准的兼容:移动设备上目前iOS和Android两大阵营分别主要使用Apple的Safari和Google的Chrome,由于两者都是Webkit核心,结果HTML5首先在手机上全面普及(桌面绝对是Microsoft拖了后腿),对JavaScript的标准支持也很好,最新版本均支持ES6。其他浏览器如Opera等由于市场份额太小就被自动忽略了。另外还要注意识别各种国产浏览器,如某某安全浏览器,某某旋风浏览器,它们只是做了一个壳,其核心调用的是IE或Webkit,也有号称同时支持IE和Webkit的“双核”浏览器。不同的浏览器对JavaScript支持的差异主要是,有些API的接口不一样,比如AJAX,File接口。对于ES6标准,不同的浏览器对各个特性支持也不一样。JavaScript浏览器国内外pc浏览器及移动端浏览器对新标准的兼容:Trident内核:IE,MaxThon,TT,TheWorld,360,搜狗浏览器等。[又称MSHTML]Gecko内核:Netscape6及以上版本,FF,MozillaSuite/SeaMonkey等Presto内核:Opera7及以上。[Opera内核原为:Presto,现为:Blink;]Webkit内核:Safari,Chrome等。[Chrome的:Blink(WebKit的分支)]JavaScriptAjax基础什么是服务器网页浏览过程分析如何配置自己的服务器程序(AMP--集成了Apache,PHP5,和MySQL)浏览器服务器文件localhost/文件.txt,这种方式和用路径在浏览器上打开的方式是不同的,前者是在服务器上什么是Ajax:无刷新数据读取很早就存在了,但是大家不知道有什么用,第一个使用的是谷歌用在了谷歌map上,之后就开始了ajax的滥用常用的地方:用户注册和在线聊天室异步、同步JavaScriptAjax基础varoBtn=document.getElementById('btn1');oBtn.onclick=function(){//ajax能且仅能从服务器上读取文件信息ajax('abc.txt',function(str){alert(str);});}//第一个参数是地址,第二个参数是拿到地址上的内容str后要做的函数注意:保存的txt文件也必须是utf-8编码,否则不是乱码就是出错练习:3个按钮和一个div,点击第一个按钮把文件1.txt内容放在div里,点击第二个按钮时把文件2.txt内容放在div里,点击第三个按钮时把文件3.txt内容放在div里JavaScript使用Ajax基础:请求并显示静态TXT文件字符集编码:utf-8编码缓存、阻止缓存,利用url里的'abc.txt?t='+newDate().getTime()(毫秒数)动态数据:请求JS(或json)文件在服务器上读到的东西全部是以文本(string)的方式,因此无法拿到数组或者json,需要evaleval(str)的使用:将字符串转换成js代码(函数,计算等)服务器上更多的是放的json或由json组成的数组练习:利用ajax做一个分页效果JavaScriptHTTP请求方法:GET:用于获取数据(如:浏览贴子)把数据放在url(网址)里来提交POST:用于上传数据(如:用户注册)把数据放在不是url的地方提交GET、POST的区别get在url里传送数据:安全性低、容量小post安全性一般、容量几乎无限get便于分享(商品地址和url有关),适合获取,且会缓存post更适合上传(图片等)JavaScript自己封装一个Ajax:思考步骤:和打电话类似1、买个手机并申请个号码2、向需要拨打的号码拨号3、向对方说话4、听对方话说1、创建Ajax对象2、与服务器连接3、发送请求4、接收返回值JavaScript创建Ajax对象:ActiveXObject('Microsoft.XMLHTTP')//ie6自带的插件XMLHttpRequest()之前我们说全局变量和全局函数都是window的属性和方法,只是前面的window.被省略了,但是他们未定义的时候出错是不同的(用一个不存在的变量会出错,而用一个不存在的属性只是未定义),因此可以用window.XX的方式做判断JavaScript连接服务器open(方法,文件名,异步传输)方法:GET/POST文件名:你的文件名同步和异步:false/true事件一件一件进行就是同步多件事一起进行就是异步发送请求send()JavaScript接收返回onreadystatechange:与服务器发生数据传输时readyState属性:请求状态0、(未初始化)还没有调用open()方法1、(载入)已调用send()方法,正在发送请求2、(载入完成)send()方法完成,已收到全部相应内容3、(解析)正在解析相应内容4、(完成)相应内容解析完成,可以在客户端调用了status属性:是否成功(200成功,常见失败404)responseText属性:返回的数据JavaScript优缺点-优点1.无刷新更新数据:能在不刷新整个页面的前提下与服务器通信维护数据。更为迅捷地响应用户交互,避免了发送没有改变的信息,减少用户等待时间,带来非常好的用户体验。2.异步与服务器通信:AJAX使用异步方式与服务器通信,不需要打断用户的操作,具有更加迅速的响应能力。优化了Browser和Server之间的沟通,减少不必要的数据传输、时间及降低网络上数据流量。JavaScript优缺点-优点3.前端和后端负载平衡:把一些服务器负担的工作转嫁到客户端,用客户端闲置的能力来处理,减轻服务器和带宽的负担,节约空间和宽带租用成本。这种“按需取数据”的方式,可最大程度的减少冗余请求和对服务器造成的负担,提升站点性能。4.基于标准被广泛支持:AJAX基于标准化的并被广泛支持,不需要下载浏览器插件或者小程序,只需要客户允许JavaScript在浏览器上执行。随着Ajax的成熟,出现了另一种辅助程序设计的技术,为那些不支持JavaScript的用户提供替代功能。JavaScript优缺点-优点5.界面与应用分离:Ajax使WEB中的界面与应用分离(也可以说是数据与呈现分离),有利于分工合作、减少非技术人员对页面的修改造成的WEB应用程序错误、提高效率、适用于现在的发布系统。优缺点-缺点1.AJAX干掉了Back和History功能:动态更新的页面,用户无法回到前一个页面状态,因为浏览器仅能记忆历史记录中的静态页面。解决方案是使用URL片断标识符(通常被称为锚点,即URL中#后面的location.hash)来保持跟踪。JavaScript优缺点-缺点2.AJAX的安全问题:Ajax技术对企业数据建立了一个直接通道。会暴露比以前更多的数据和服务器逻辑。并会隐藏客户端的安全扫描技术,允许黑客从远端服务器上建立新的攻击。还有Ajax也难以避免跨站点脚步攻击、SQL注入攻击和基于Credentials的安全漏洞等等。3.对搜索引擎支持较弱:对搜索引擎的支持比较弱。如果使用不当,AJAX会增大网络数据的流量,从而降低整个系统的性能。JavaScript优缺点-缺点4.破坏程序的异常处理机制:至少从目前看来,像Ajax.dll,Ajaxpro.dll这些Ajax框架是会破坏程序的异常机制的。分别采用Ajax和传统的form提交的模式来删除一条数据……给调试带来了很大的困难。5.违背URL和资源定位的初衷:你在一个URL地址下面看到的和我在这个URL地址下看到的内容是不同的。这个和资源定位的初衷是相背离的。JavaScript优缺点-缺点6.AJAX不能很好支持移动设备:如手机、PDA等现在还不能很好的支持Ajax。7.客户端过大,太多客户端代码造成开发上的成本:编写复杂、容易出错;冗余代码比较多(层层包含js文件是AJAX的通病,再加上以往的很多服务端代码现在放到了客户端);破坏了Web的原有标准。
本文标题:JavaScript中7
链接地址:https://www.777doc.com/doc-3600567 .html