js性能优化技巧


Posted in Javascript onNovember 29, 2015

性能优化:简而言之,就是在不影响系统运行正确性的前提下,使之运行地更快,完成特定功能所需的时间更短

http:超文本协议

它的最上层是应用层 传输层 网络层 物理层
请求信息:请求行 请求头 空行 消息体
响应信息:状态行和状态码

使用值类型的ToString方法:

在连接字符串时,经常使用"+"号直接将数字添加到字符串中。这种方法虽然简单,也可以得到正确结果,但是由于涉及到不同的数据类型,数字需要通过装箱操作转化为引用类型才可以添加到字符串中。但是装箱操作对性能影响较大,因为在进行这类处理时,将在托管堆中分配一个新的对象,原有的值复制到新创建的对象中。使用值类型的ToString方法可以避免装箱操作,从而提高应用程序性能。

尽量选择html控件:

能在客户端实现的功能就在客户端实现(熟练掌握JavaScript),减少服务器的压力。数据控件选择顺序:Repeater、DataList、DataGrid。

在建立数据库连接后只有在真正需要操作时才打开连接,使用完毕后马上关闭,从而尽量减少数据库连接打开的时间,避免出现超出连接限制的情况。

字符串操作性能优化

(1) 使用值类型的ToString方法。

在连接字符串时,经常使用"+"号直接将数字添加到字符串中。这种方法虽然简单,也可以得到正确结果,但是由于涉及到不同的数据类型,数字需要通过装箱操作 ,转化为引用类型才可以添加到字符串中。但是装箱操作对性能影响较大,因为在进行这类处理时,将在托管堆中分配一个新的对象,原有的值复制到新创建的对象中。使用值类型的ToString方法可以避免装箱操作,从而提高应用程序性能。

(2) 运用StringBuilder类

String类对象是不可改变的,对于String对象的重新赋值在本质上是重新创建了一个String对象并将新值赋予该对象,其方法ToString对性能的提高并非很显著。在处理字符串时,最好使用StringBuilder类,其.NET 命名空间是System.Text。该类并非创建新的对象,而是通过Append,Remove,Insert等方法直接对字符串进行操作,通过 ToString方法返回操作结果。

避免到服务器的不必要的往返过程

使用Page.IsPostBack避免对往返过程执行不必要的处理。
虽然您很可能希望尽量多地使用Web窗体页框架的那些节省时间和代码的功能,但在某些情况下却不宜使用 ASP.NET 服务器控件和回发事件处理。通常,只有在检索或存储数据时,您才需要启动到服务器的往返过程。多数数据操作可在这些往返过程间的客户端上进行。

压缩js

js在页面中调用的大小写要保持一致,免得缓存了不同的文件,页面的js可以的话,写成单位的文件进行调用 。图片少用jpeg,使用gzip对网页进行压缩. 加快页面展示速度。

把调用js,尽量写在页面底部, 还有viewstate 状态也可以重写到页面低部, 也可以把viewstate进行压缩。条件是viewstate必要要用的情况之下。

Javascript 相关文章推荐
js复制到剪切板的实例方法
Jun 28 Javascript
javascript js 操作数组 增删改查的简单实现
Jun 20 Javascript
微信小程序 wxapp地图 map详解
Oct 31 Javascript
JS函数多个参数默认值指定方法分析
Nov 28 Javascript
angularjs2 ng2 密码隐藏显示的实例代码
Aug 01 Javascript
vue.js打包之后可能会遇到的坑!
Jun 03 Javascript
Vue中props的使用详解
Jun 15 Javascript
教你如何编写Vue.js的单元测试的方法
Oct 17 Javascript
express框架中使用jwt实现验证的方法
Aug 25 Javascript
javaScript中indexOf用法技巧
Nov 26 Javascript
node.js中process进程的概念和child_process子进程模块的使用方法示例
Feb 11 Javascript
JavaScript如何实现图片处理与合成
May 29 Javascript
javascript实现C语言经典程序题
Nov 29 #Javascript
JavaScript学习小结(7)之JS RegExp
Nov 29 #Javascript
整理Javascript基础入门学习笔记
Nov 29 #Javascript
jquery+json实现数据二级联动的方法
Nov 28 #Javascript
JavaScript实现页面跳转的几种常用方式
Nov 28 #Javascript
Javascript页面跳转常见实现方式汇总
Nov 28 #Javascript
Javascript编程之继承实例汇总
Nov 28 #Javascript
You might like
PHP 开源AJAX框架14种
2009/08/24 PHP
浅析PHP文件下载原理
2014/12/25 PHP
php 实现301重定向跳转实例代码
2016/07/18 PHP
ThinkPHP实现简单登陆功能
2017/04/28 PHP
一个加载js文件的小脚本
2007/06/28 Javascript
windows下安装nodejs及框架express
2015/08/07 NodeJs
Ext JS动态加载JavaScript创建窗体的方法
2016/06/23 Javascript
vue2.0+webpack环境的构造过程
2016/11/08 Javascript
jQuery和JavaScript节点插入元素的方法对比
2016/11/18 Javascript
详解前端自动化工具gulp自动添加版本号
2016/12/20 Javascript
微信小程序 设置启动页面的两种方法
2017/03/09 Javascript
JavaScript递归函数解“汉诺塔”算法代码解析
2018/07/05 Javascript
Bootstrap Fileinput 4.4.7文件上传实例详解
2018/07/25 Javascript
angular 服务的单例模式(依赖注入模式下)详解
2018/10/22 Javascript
Vuex的初探与实战小结
2018/11/26 Javascript
layui在form表单页面通过Validform加入简单验证的方法
2019/09/06 Javascript
vue倒计时刷新页面不会从头开始的解决方法
2020/03/03 Javascript
vue移动端写的拖拽功能示例代码
2020/09/09 Javascript
Python设计模式之观察者模式实例
2014/04/26 Python
Python自动登录126邮箱的方法
2015/07/10 Python
python装饰器与递归算法详解
2016/02/18 Python
深入浅析Python中join 和 split详解(推荐)
2016/06/30 Python
Python实现字符串逆序输出功能示例
2017/06/24 Python
Python反转序列的方法实例分析
2018/03/21 Python
Anaconda之conda常用命令介绍(安装、更新、删除)
2019/10/06 Python
Python for i in range ()用法详解
2020/09/18 Python
Python使用Chrome插件实现爬虫过程图解
2020/06/09 Python
详解Django ORM引发的数据库N+1性能问题
2020/10/12 Python
HTML5 离线应用之打造零请求、无流量网站的解决方法
2013/04/25 HTML / CSS
Melissa鞋马来西亚官方网站:MDreams马来西亚
2018/04/05 全球购物
英国最受欢迎的平价女士时装零售商:Roman Originals
2019/11/02 全球购物
俄罗斯达美乐比萨外送服务:Domino’s Pizza
2020/12/18 全球购物
村党的群众路线教育实践活动总结材料
2014/10/31 职场文书
2014年幼儿园保育工作总结
2014/12/02 职场文书
工人先锋号事迹材料
2014/12/24 职场文书
欧元符号 €
2022/02/17 杂记