js异步加载的方式有哪些?

JavaScript016

js异步加载的方式有哪些?,第1张

方法一:Script Dom Element

(function(){

var scriptEle = document.createElement("script")

scriptEle.type = "text/javasctipt"

scriptEle.async = true

scriptEle.src = "http://cdn.bootcss.com/jquery/3.0.0-beta1/jquery.min.js"

var x = document.getElementsByTagName("head")[0]

x.insertBefore(scriptEle, x.firstChild)

})()

方法二:onload时的异步加载

function(){

if(window.attachEvent){

window.attachEvent("load", asyncLoad)

}else{

window.addEventListener("load", asyncLoad)

}

var asyncLoad = function(){

var ga = document.createElement('script')

ga.type = 'text/javascript'

ga.async = true

ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'

var s = document.getElementsByTagName('script')[0]

s.parentNode.insertBefore(ga, s)

}

})()

方法三:$(document).ready()

为了解决这个问题,Javascript语言将任务的执行模式分成两种:同步(Synchronous)和异步(Asynchronous)。

"同步模式"就是上一段的模式,后一个任务等待前一个任务结束,然后再执行,程序的执行顺序与任务的排列顺序是一致的、同步的;"异步模式"则完全不同,每一个任务有一个或多个回调函数(callback),前一个任务结束后,不是执行后一个任务,而是执行回调函数,后一个任务则是不等前一个任务结束就执行,所以程序的执行顺序与任务的排列顺序是不一致的、异步的。

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

您好,要让JS尽快执行,最好的方法就是优化代码,减少不必要的操作,比如减少循环次数,减少函数调用次数,减少if-else判断次数,尽量使用缓存,减少重复操作,尽量使用原生JS而不是第三方库,尽量使用异步操作,尽量使用简单的数据结构,尽量使用简单的算法,尽量使用压缩后的JS文件,尽量使用最新的JS语法,尽量使用基于浏览器的JS引擎,尽量使用最新的浏览器,尽量使用最新的硬件设备,尽量使用最新的操作系统,尽量使用最新的浏览器内核,尽量使用最新的浏览器插件,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏览器技术,尽量使用最新的浏