从头开始实现一个神经网络
现代网站中,脚本比超文本标记语言(HTML)更密集,大小更大,处理时间更长。默认情况下,浏览器必须等待脚本下载并执行后,再处理页面的其余部分。这可能会导致庞大的脚本阻止网页加载。为避免这种情况,JavaScript提供了两种名为异步和延迟的技术,您只需将这些属性添加到<script>标签中。 异步是告诉浏览器在不影响渲染的情况下加载脚本。换句话说,页面不等待异步脚本,而是处理和显示内容。延迟是在渲染完成后告诉浏览器加载脚本。如果两者都有指定,异步在现代浏览器上处于优先地位,而支持延迟但不支持异步的旧浏览器将回退到延迟。 这两个属性可以极大地减少页面加载时间。 12. 使用异步代码防止线程阻塞 JavaScript默认是同步的,也是单线程的。但有时代码需要大量时间来计算。从本质上讲,同步意味着一段代码会阻止其他代码语句运行,直到执行结束。这会降低网站整体性能。但是我们可以通过实施异步代码避免这种情况。异步代码曾以回调形式编写,但ES6引入了一种处理异步代码的新风格,名为promises。 但如何在单线程上运行的同时还能运行异步代码?这是很多人困惑的地方。一切因运行在浏览器后台的JavaScript引擎而成为可能。JavaScript引擎是执行JavaScript代码的计算机程序或解释器。JavaScript引擎可以用多种语言编写。例如,支持谷歌浏览器的V8引擎是用C++编写的,而支持火狐浏览器的蜘蛛猴引擎是用C和C++编写的。 这些JavaScript引擎可以在后台处理任务。据布莱恩所说,调用栈识别网络应用程序界面(Web API)的功能,并递交至浏览器处理。一旦浏览器完成了这些任务,它们就会返回并作为回调被压入堆栈。 在没有浏览器的情况下,Node.js如何运行?事实上,驱动谷歌浏览器的V8引擎也支持Node.js。
13. 使用代码拆分 使用诸如Gzip之类的压缩方法可缩小JavaScript文件的大小。鉴于浏览器所需下载资料缩小,网站性能也随之提高。压缩可将文件大小减少80%。 9. 缩减最终代码 有人认为缩减和压缩是一样的,事实并不是这样。压缩使用特殊算法来改变文件的输出大小,缩减则需删除JavaScript文件中的注释和多余空格。这一过程可以在许多工具和包的帮助下完成,这些工具和包都可以在网上找到。缩减已成为页面优化的标准做法,也是前端优化的主要组成部分。 缩减可将文件大小减少60%。 10. 使用节流(throtte)和去抖动(debounce) 节流和去抖动可严格控制代码处理事件的次数。 节流指定函数可以超时的最大次数。例如,“每1000毫秒最多执行一次onkeyup事件函数。”这意味着如果每秒输入20个键,事件每秒只会触发一次,这将减少代码的负载。 去抖动指定函数最小的持续时间,该时间是该函数自上一次执行后再次运行的时间。换句话说,“只有在经过600毫秒而没有调用该函数的情况下,才会执行这个函数。”这就意味着自最后一次执行该函数起600毫秒内,该函数不会被调用。
11. 使用异步和延迟 (编辑:唐山站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |