文档章节

JavaScript强化教程——javascript性能优化

哟猫Intry
 哟猫Intry
发布于 2016/06/27 16:09
字数 445
阅读 24
收藏 1

本文为 H5EDU 机构官方 HTML5培训 教程,主要介绍:JavaScript强化教程 ——数据存取

数据的存取位置也影响着JavaScript的运行速度,我们来总结一下如能分配存取位置最合理,能够高效的运行JavaScript
数据存取位置 分为 1.字面量(如true、false、null等) 2.本地变量(var a=5;) 3.数组元素(var arr=[]; arr[0]=5;) 4.对象成员 
以上这些都可以存储数据
根据不同浏览器进行的200 000次读取数据所需时间得出,由快到慢为 1 2 3 4 (综合得出,不同浏览器会有浮动)

快速高效执行JavaScript代码小结:
1.访问字面量、本地变量比数组元素和对象成员相比较快。
2.由于局部变量处在作用域链的起始位置,因此访问局部变量比访问跨域变量更快。变量在作用域链中的位置越深,访问速度越慢,由于全局变量总在作用域链的最末端,所以访问速度最慢。
3.嵌套的对象成员会明显影响性能,尽量少用。
4.属性或方法在原型链中的位置越深,访问速度越慢。
5.通常来说,你可以把数组元素,对象成员,跨域变量保存在局部变量中来提升JavaScript性能,因为访问局部变量更快
6.尽量少使用with,因为他会改变执行环境作用域链,同样type-catch语句中的子语句catch也有同样的影响,因此要小心。
通过以上发放,你可以显著提升大量应用JavaScript的Web应用的实际性能。

© 著作权归作者所有

共有 人打赏支持
哟猫Intry
粉丝 0
博文 46
码字总数 31138
作品 0
昌平
私信 提问
每个JavaScript工程师都应懂的33个概念

摘要: 基础很重要啊! 原文:33 concepts every JavaScript developer should know 译文:每个 JavaScript 工程师都应懂的33个概念 作者:stephentian Fundebug经授权转载,版权归原作者所有...

Fundebug
10/30
0
0
抢先预览 ExtJS 4.2 的表格控件

在新发布的Ext JS 4.2测试版中,我们做了许多的改动。你可以在论坛公告处查看所有详细信息。在这篇文章中,我们将着重介绍性能提升的Grid组件。在之前关于Ext Js 4.1性能和基于此版本的应用的...

oschina
2013/01/23
2.8K
1
前端学习之路(从入门到入坑...)

学习前端两年多了,拿了阿里巴巴实现offer,想结合个人经历总结的前端入门方法,总结从零基础到具备前端基本技能的道路、学习方法、资料。由于能力有限,不能保证面面俱到,只是作为入门参考...

阿小庆
06/14
0
0
JavaScript开发者应懂的33个概念

简介 这个项目是为了帮助开发者掌握 JavaScript 概念而创立的。它不是必备,但在未来学习(JavaScript)中,可以作为一篇指南。 本篇文章是参照 @leonardomso 创立,英文版项目地址在这里。 ...

大灰狼的小绵羊哥哥
10/22
0
0
[译] JavaScript 是如何工作的:对比 WebAssembly + 为什么在某些场景下它比 JavaScript 更合适

原文地址:How JavaScript works: A comparison with WebAssembly + why in certain cases it’s better to use it over JavaScript 原文作者:Alexander Zlatkov 译文出自:掘金翻译计划 本......

stormluke
05/23
0
0

没有更多内容

加载失败,请刷新页面

加载更多

集成测试——Spring TestContext框架支持详细解说

概述 集成测试是在单元测试之上,通常是将一个或多个已进行过单元测试的组件组合起来完成的,即集成测试中一般不会出现Mock对象,都是实实在在的真实实现。 对于单元测试,如前边在进行数据访...

呐呐丶嘿
4分钟前
0
0
爬取豆瓣电影TOP250的所有电影名称,网址为:https://movie.douban.com/top250

所谓静态页面是指纯粹的HTML格式的页面,这样的页面在浏览器中展示的内容都在HTML源码中。 目标:爬取豆瓣电影TOP250的所有电影名称,网址为:https://movie.douban.com/top250 1)确定目标网...

linjin200
4分钟前
0
0
ES6私有变量的实现

1. 约定 实现 class Example { constructor() { this._private = 'private'; } getName() { return this._private }}var ex = new Example();console.log(ex.getName()); // ......

peakedness丶
6分钟前
0
0
SQLServer AlwaysOn在阿里云的前世今生

缘起 早在2015年的时候,随着阿里云业务突飞猛进的发展,SQLServer业务也积累了大批忠实客户,其中一些体量较大的客户在类似大促的业务高峰时RDS的单机规格(规格是按照 内存CPUIOPS 一定比例...

阿里云官方博客
11分钟前
0
0
绑定域名到 GitHub Pages

GitHub Pages 绑定来自阿里云的域名 简介 我在阿里云上注册了一个新域名:yuanzb.com,我已经在GitHub Pages上建立了自己的博客:http://yuanzb.github.io/yuanzb/。现在我希望将yuanzb.com映...

临江仙卜算子
17分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部