json 异步加载 时间线 (上)有源码 可以随意进行练习哈 太棒了 一起加油 一起成长

4 篇文章 0 订阅

1、
xml可以自定义标签

<student>
<name>deng</name>
<age>23</age>
</student>

2、json 是一种传输数据的格式(一对象为样板,本质上就是对象,但用途有区别 对象就是本地用的 json是用来传输的)
JSON.parse(); string —> json
JSON.stringify(); json —> string
斜体样式在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、
JS异步加载
页面
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
randerTree 改变会导致reflow (重排)低效率的
在这里插入图片描述
repaint 重绘 改背景颜色等 效率浪费的比较少

异步加载JS
阻断 html 和 css 的下载线
有些工具方法需要按需求加载 用到再加载 不用 不加载

缺点 : 加载工具方法没必要阻塞文档 过多js加载会影响页面效率 一旦网速不好 那么整个网站将等待js加载而不进行后续渲染等工作

javascript 异步加载的三种方案
1、defer 异步加载 但是要等到dom 文档全部解析完(domTree 生成完)才会被执行有IE能用 也可以将代码写道内部(<script> 写在这个里面</script>
在这里插入图片描述

2、async异步加载 加载完就执行 async只能加载外部脚本 不能把js 写在script标签里面
2.1 执行时也不阻塞页面
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
3、创建script 插入到DOM中 加载完毕后 callBack 最常用的方式
在这里插入图片描述
在这里插入图片描述
IE没有
IE没有load 事件
IE里面是 script.readState 状态码
在这里插入图片描述
在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head>
	<title>修炼之路</title>
	<meta charset="utf-8">
	<style type="text/css">
		
	</style>

</head>
<body>
	     
	  
 	<script type="text/javascript">
 	//手写一个方法  传入两个变量  
 	function loadScript(url, callback){
 	var script = document.creatElement('script');
 	 script.type = "text/javascript";
 	 //IE 浏览器 部分
 	if(script.readyState){
 		script.onreadyStatechange = function () {
 			if(script.readyState == "comple" || script.readyState == "loaded"){
 				callback();
 			}
 		}
 	}else{
 		//非 IE浏览器部分
 		script.onload = function () {
 			callback();
 		}
 	}
     // 把这一句放在后面 确保事件先执行 避免下载太快
     //   未能绑定事件
 	script.src = url;  //url 一般指代的是js文件 
 	//最后这一句 确保 上面的操作可以展示到界面上
 	document.head.appendChild(script);
 	}
 	</script>
	
</body>
</html>  


在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值