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重建星际争霸
Dec 22 Javascript
javascript flash下fromCharCode和charCodeAt方法使用说明
Jan 12 Javascript
JavaScript的eval JSON object问题
Nov 15 Javascript
不使用浏览器运行javascript代码的方法
Jul 24 Javascript
JS获取地址栏参数的几种方法小结
Feb 28 Javascript
JavaScript常用小技巧小结
Dec 29 Javascript
javascript中的 object 和 function小结
Aug 14 Javascript
微信小程序小组件 基于Canvas实现直播点赞气泡效果
May 29 Javascript
vue刷新页面时去闪烁提升用户体验效果的实现方法
Dec 10 Javascript
jQuery内容选择器与表单选择器实例分析
Jun 28 jQuery
详解BootStrap表单验证中重置BootStrap-select验证提示不清除的坑
Sep 17 Javascript
详解Vue串联过滤器的使用场景
Apr 30 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
ThinkPHP CURD方法之table方法详解
2014/06/18 PHP
PHP常用的排序和查找算法
2015/08/06 PHP
thinkphp自带验证码全面解析
2016/09/18 PHP
PHP设计模式之外观模式(Facade)入门与应用详解
2019/12/13 PHP
js显示时间 js显示最后修改时间
2013/01/02 Javascript
jQuery .attr()和.removeAttr()方法操作元素属性示例
2013/07/16 Javascript
JavaScript代码编写中各种各样的坑和填坑方法
2014/06/06 Javascript
window.print打印指定div指定网页指定区域的方法
2014/08/04 Javascript
JS+CSS实现模仿浏览器网页字符查找功能的方法
2015/02/26 Javascript
js用拖动滑块来控制图片大小的方法
2015/02/27 Javascript
深入理解JavaScript中的call、apply、bind方法的区别
2016/05/30 Javascript
JavaScript知识点总结(六)之JavaScript判断变量数据类型
2016/05/31 Javascript
JS/jQ实现免费获取手机验证码倒计时效果
2016/06/13 Javascript
详解用函数式编程对JavaScript进行断舍离
2017/09/18 Javascript
利用JS hash制作单页Web应用的方法详解
2017/10/10 Javascript
在小程序中使用Echart图表的示例代码
2018/08/02 Javascript
JavaScript实现选项卡效果的分析及步骤
2019/04/16 Javascript
javascript实现一款好看的秒表计时器
2020/09/05 Javascript
多个Vue项目部署到服务器的步骤记录
2020/10/22 Javascript
[01:11:11]Alliance vs RNG 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
Python sys.argv用法实例
2015/05/28 Python
解决win64 Python下安装PIL出错问题(图解)
2018/09/03 Python
Python Multiprocessing多进程 使用tqdm显示进度条的实现
2019/08/13 Python
Python3 文章标题关键字提取的例子
2019/08/26 Python
Django项目创建到启动详解(最全最详细)
2019/09/07 Python
Pycharm小白级简单使用教程
2020/01/08 Python
Softmax函数原理及Python实现过程解析
2020/05/22 Python
幼儿园小班植树节活动方案
2014/03/04 职场文书
聚美优品陈欧广告词
2014/03/14 职场文书
年会搞笑主持词串词
2014/03/24 职场文书
体育之星事迹材料
2014/05/11 职场文书
2016大学生毕业实习心得体会
2016/01/23 职场文书
2016年青少年禁毒宣传教育活动总结(学校)
2016/04/05 职场文书
2019旅游导游工作总结
2019/06/27 职场文书
2019年亲子运动会口号
2019/10/11 职场文书
Python基础之Socket通信原理
2021/04/22 Python