BOM + AJAX

  • A+
所属分类:JavaScript

BOM

实现以下函数

判断是否为IE浏览器

  • 这里应该说一下,在从网上了解到的资料来看,在对于某个功能事件的时候不要去做浏览器检测,而应该做特性检测。这样更符合要求,且浏览器的UserAgent可人为修改
  • 需要实现的话,ie11的版本号中并没有msie:。只能通过rv:获得。所以需进行一些处理。但是该属性同样可以返回火狐浏览器的版本号- -。所以还需要多加一层判断。查找是否存在Trident\/7.0;
  • 使用正则表达式的match方法,详细见我写的正则表达式的博客。

Cookie相关

秒味js的免费课程,把cookie讲的很好。

什么是cokie

  • 页面用来保存信息
    • 比如:自动登入/保存用户名
  • cookie的特性
    • 同一个网站中所有页面共享一套cookie
    • 数量/大小有限
    • 过期时间
  • JS中使用cookie
    • document.cookie

设置cookie

获取cookie值

删除cookies

扩展阅读:

sessionStorage、localStorage 和 cookie 之间的区别

  • 共同点

都是保存在浏览器端,且同源的。都是键值对存储。

  • 区别
特性CookielocalStoragesessionStorage
数据的声明周期一般由服务器生成,可设置失效时间。如果在浏览器端生成Cookie,默认是关闭浏览器后失效除非被清除,否则永久保存仅在当前会话下有效,关闭页面或关闭浏览器后被清除
存放数据大小4K左右一般为5MB同左(话说markdown不支持跨列表格,只能用html写,懒得麻烦了-_-)
与服务器端通信每次都会携带在HTTP头中,如果使用cookie保存过多数据会带来性能问题仅在客户端(即浏览器)中保存,不参与和服务器的通信同左
易用性需要程序员自己封装,原生的Cookie接口不友好原生接口可以接受,亦可再次封装来对Object和Array有更好的支持同左
  • 安全性
    cookie 中最好不要放置任何明文的东西。而且特别需要注意敏感数据的存放。不是什么数据都适合放在 Cookie、localStorage 和 sessionStorage中的。使用它们的时候,需要时刻注意是否有代码存在 XSS 注入的风险。
  • 参考:详说 Cookie, LocalStorage 与 SessionStorage

Ajax

任务描述

学习Ajax,并尝试自己封装一个Ajax方法。实现如下方法:

options是一个对象,里面可以包括的参数为:

  • type: post或者get,可以有一个默认值
  • data: 发送的数据,为一个键值对象或者为一个用&连接的赋值字符串
  • onsuccess: 成功时的调用函数
  • onfail: 失败时的调用函数

实现如下:

专门用两篇博客来记录了一下AJAX的学习过程,以及该函数的完成过程

Ajax入门(一)从0开始到一次成功的GET请求

Ajax入门(二)Ajax函数封装

 

weinxin
我的微信公众号
我的微信公众号扫一扫

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: