前端知识小拷问 002


准备接收大前端形法的考验吧!?每日5题,直击你的内心 ~~
仓库地址:https://github.com/RiversCoder/fontend-question-ten-everyday

  • 白屏时间:<head> 标签解析完就是白屏的结束时间点,在head标签中前后打点,计算差值
  • 首屏时间:首屏时间是指用户打开网站开始,到浏览器首屏页面内容渲染完成的时间,重要;由于在页面上可能存在很多异步加载的需求,所以建议最好使用devtool中的timeline工具
  • 闭包就是能够读取其他函数内部变量的函数
  • 作用域是针对变量的
  • 作用域的特点就是,先在自己的变量范围中查找,如果找不到,就会沿着作用域逐级往上查找变量。
  • ajax请求实现调用
var getXmlHttpRequest = function () {
    if (window.XMLHttpRequest) {
        //主流浏览器提供了XMLHttpRequest对象
        return new XMLHttpRequest();
    }
    else if (window.ActiveXObject) {
        //低版本的IE浏览器没有提供XMLHttpRequest对象
        //所以必须使用IE浏览器的特定实现ActiveXObject
        return new ActiveXObject("Microsoft.XMLHTTP");
    }
};
var xhr = getXmlHttpRequest();
xhr.onreadystatechange = function () {
    if (xhr.readyState === 4 && xhr.status === 200) {
        //获取成功后执行操作
        //数据在xhr.responseText
    }
};
xhr.open("TYPE", "URL", true);
xhr.send("");
  • readyState中的五种状态
  • 目前则更多的是使用 onload 方法
  • 定义一个函数,用于处理接收到的跨域数据。
  • 创建一个script节点,然后src属性上拼接发送的目的URL以及callback字符参数。
  • 在跨域服务器端接收GET请求,获取cabback参数,拼接好,返回数据。
  • 删除之前生成的script节点。
07-09 12:06