编写高效的JavaScript】的更多相关文章

Web前端性能优化——编写高效的JavaScript   前言 随着计算机的发展,Web富应用时代的到来,Web 2.0早已不再是用div+css高质量还原设计的时代.自Gmail网页版邮件服务的问世开始,Web前端开发也开启了新的纪元.用户需求不断提高,各种新的技术层出不穷,前端工程师的地位也越来越重要.然而任何事物都是有两面性的,随着前端技术的发展,前端业务越来越繁重,这大大增加了JS代码量.因此,要提高Web的性能,我们不仅需要关注页面加载的时间,还要注重在页面上操作的响应速度.那么,接下…
作者: Addy Osmani  来源: CSDN  发布时间: 2013-01-10 14:15  阅读: 7952 次  推荐: 15   原文链接   [收藏] 英文原文:Writing Fast, Memory-Efficient JavaScript Addy Osmani是谷歌公司Chrome团队中的一名程序开发工程师.他是一位JavaScript爱好者,曾经编写过一本开放源码方面的书籍<Learning JavaScript Design Patterns>以及<Devel…
前言 随着计算机的发展,Web富应用时代的到来,Web 2.0早已不再是用div+css高质量还原设计的时代.自Gmail网页版邮件服务的问世开始,Web前端开发也开启了新的纪元.用户需求不断提高,各种新的技术层出不穷,前端工程师的地位也越来越重要.然而任何事物都是有两面性的,随着前端技术的发展,前端业务越来越繁重,这大大增加了JS代码量.因此,要提高Web的性能,我们不仅需要关注页面加载的时间,还要注重在页面上操作的响应速度.那么,接下来我们讨论几种能够提高JavaScript效率的方法. 一…
许多Javascript引擎都是为了快速运行大型的JavaScript程序而特别设 计的,例如Google的V8引擎(Chrome浏览器,Node均使用该引擎).在开发过程中,如果你关心你程序的内存和性能的话,你应该了解并意识 到,在你的代码背后,浏览器的JavaScript引擎中到底发生了什么事情. 不论的V8,SpiderMonkey(Firefox).Carakan(Opera).Chakra(IE)或者其它类型的引擎.了解引擎背后 的一些运行机制可以帮助你更好的优化你的应用程序.这并不是…
编写高效.规范的js代码: 1.变量命名空间问题,尽量使用局部变量,防止命名冲突(污染作用域中的全局变量):全局空间命名的变量可以在对应的文档域任意位置中使用window调用. 2.尽量使用单var定义变量(作用域开始先申明并赋值变量,便于后边使用),使用var定义的变量只作用于对应的作用域中,如定义的全局变量作用于全局作用域,函数中定义的变量作用于该局部作用域中.未用var定义的变量相当于一个全局变量,在函数中出现的该类变量作用域全局域.(但是var定义的全局变量不能用delete删除,而未定…
http://www.css88.com/jqapi-1.9/ 编写高效的jQuery代码 最近写了很多的js,虽然效果都实现了,但是总感觉自己写的js在性能上还能有很大的提升.本文我计划总结一些网上找的和我本人的一些建议,来提升你的jQuery和javascript代码.好的代码会带来速度的提升.快速渲染和响应意味着更好的用户体验.谨以此文来提醒自己. 首先,跟大家推荐一下jQuery API 文档 http://www.css88.com/jqapi-1.9/ ,她会告诉你使用jQuery时…
简介: <Effective JavaScript:编写高质量JavaScript代码的68个有效方法>共分为7章,分别涵盖JavaScript的不同主题.第1章主要讲述最基本的主题,如版本.类型转换要点.运算符注意事项和分号局限等.第2章主要讲解变量作用域,介绍此方面的一些基本概念,以及一些最佳实践经验.第3章主要讲解函数的使用,深刻解析函数.方法和类,并教会读者在不同的环境下高效使用函数.第4章主要讲解原型和对象,分析JavaScript的继承机制以及原型和对象使用的最佳实践和原则.第5章…
最近应团队要求,研究整理了下,mysql相关的优化,有些是根据实际java项目中碰到的情况经验之谈.欢迎讨论~ SQL 语言是一种强大而且灵活的语言,在使用 SQL 语言来执行某个关系查询的时候,用户可以写出很多不同的 SQL 语句来获取相同的结果.也就是说,语法不同的SQL语句,有可能在语义上是完全相同的.但是尽管这些 SQL 语句最后都能返回同样的查询结果,它们执行所需要的时间却有可能差别很大. 一.优化目标 减少 IO 次数 IO永远是数据库最容易产生瓶颈的地方,这是由数据库的职责所决定的…
深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点 2011-12-28 23:00 by 汤姆大叔, 139489 阅读, 119 评论, 收藏, 编辑 才华横溢的Stoyan Stefanov,在他写的由O'Reilly初版的新书<JavaScript Patterns>(JavaScript模式)中,我想要是为我们的读者贡献其摘要,那会是件很美妙的事情.具体一点就是编写高质量JavaScript的一些要素,例如避免全局变量,使用单变量声明,在循环中预缓存…
最右边优先 css选择符是从右向左进行匹配的. 样式系统从最右边的选择符开始向左匹配规则.只要当前的选择符的左边还有其他选择符,样式系统就会继续向左移动,直到找到和匹配的元素,或者因为不匹配而退出. 编写高效选择符指南 避免使用通配规则 除了传统意义上的通配选择符之外,相邻兄弟选择符.子选择符.后代选择符和属性选择符都可以归纳为“通配规则”.推荐仅用ID.类和标签选择符. 不要限定ID选择符 在页面中一个指定的ID只能对应一个选择符,所以没有必要添加额外的限定符. 不要限定类选择符 不要用具体的…
编写高效的Android代码 毫无疑问,基于Android平台的设备一定是嵌入式设备.现代的手持设备不仅仅是一部电话那么简单,它还是一个小型的手持电脑,但是,即使是最快的最高端的手持设备也远远比不上一个中等性能的桌面机. 这就是为什么在编写Android程序时要时刻考虑执行的效率,这些系统不是想象中的那么快,并且你还要考虑它电池的续航能力.这就意味着没有多少剩余空间给你去浪费了,因此,在你写Android程序的时候,要尽可能的使你的代码优化而提高效率. 本页介绍了几种可以让开发者的Android…
C 语言中的指针和内存泄漏 http://www.ibm.com/developerworks/cn/aix/library/au-toughgame/ 本文讨论了几种在使用动态内存分配时可以避免的陷阱.要避免内存相关的问题,良好的实践是: 始终结合使用 memset 和 malloc,或始终使用 calloc. 每当向指针写入值时,都要确保对可用字节数和所写入的字节数进行交叉核对. 在对指针赋值前,要确保没有内存位置会变为孤立的. 每当释放结构化的元素(而该元素又包含指向动态分配的内存位置的指…
编写高效 SQL 语句的最佳实践 秦玮, 高级软件工程师, IBM 王广成, 软件工程师, IBM 王韵婷, 高级软件工程师, IBM 简介: 本文列举了一些在编写 SQL 查询语句时可能导致 DB2 查询缓慢的常见问题,并相应的给出了编写高效 SQL 查询语句的几个最佳实践方法.对于那些需要访问 DB2 数据库的应用程序开发人员来说,具有一定的参考价值和借鉴意义. 发布日期: 2010 年 9 月 30 日 级别: 初级 访问情况 : 5834 次浏览 评论: 2 (查看 | 添加评论 - 登…
原文:The Essentials of Writing High Quality JavaScript 才华横溢的Stoyan Stefanov,在他写的由O'Reilly初版的新书<JavaScript Patterns>(JavaScript模式)中.我想要是为我们的读者贡献其摘要,那会是件非常美妙的事情.详细一点就是编写高质量JavaScript的一些要素,比如避免全局变量,使用单变量声明,在循环中预缓存length(长度),遵循代码阅读,以及很多其它. 此摘要也包含一些与代码不太相关…
原文:深入理解JavaScript系列(1):编写高质量JavaScript代码的基本要点 1.最小全局变量(Minimizing Globals)的重要性 JavaScript通过函数管理作用域.在函数内部声明的变量只在这个函数内部,函数外面不可用.另一方面,全局变量就是在任何函数外面声明的或是未声明直接简单使用的. 原因: 在同一个全局命名空间,如果程序的两个不同部分定义了同名,但不同作用的全局变量的时候,容易发生命名冲突.所以要尽可能少的使用全局变量. 2.单var形式(Single va…
编写高效的sql可以给用户带来好的体验,需要开发这没有意识到这一点因为他们不关心也不知道怎么做.高效的sql可以给用户节省很多时间,这样就不需要dba来找上门,也不需要搭建RCA和性能调优. 性能不好的SQL有需要原因,其中之一是:全表扫描 什么时候应该用全表扫描 并不是说用全表扫描的方法来从表中获取数据是糟糕的方式,优化器选择全表扫描的方式而不选择索引的方式基于以下几点: a)如果数据量特别大,使用索引的方式不一定会比全表扫描快: b)如果查询表中所有的行(没有where)则优化器会选择全表扫…
发布一个高效的JavaScript分析.压缩工具 JavaScript Analyser 先发一段脚本压缩示例,展示一下JSA语法压缩和优化功能. try { //xxxx(); } catch (e) { yyyy(); function f1() { } } finally { zzzz(); } function f2(var1) { var var2 = 2; var var3 = 3; var withObject = {var2:-2} with(withObject){ alert…
转至http://blog.csdn.net/u012150457/article/details/41846299 一.编写高效SQL语句 1) 选择最有效的表名顺序(仅适用于RBO模式) ORACLE的解析器总是按照从右到左的顺序处理FROM子句中的表名,因此FROM子句中最后的一个表将作为驱动表被优先处理.当FROM子句存在多个表的时候,应当考虑将表上记录最少的那个表置于FROM的最右端作为基表.Oracle会首先扫描基表(FROM子句中最后的那个表)并对记录进行排序,然后扫描第二个表(F…
编写高效Lua代码的方法 翻译自<Lua Programming Gems>Chapter 2:Lua Performance Tips:Basic fact By Roberto Ierusalimschy 基本知识 Lua在运行代码之前,会先把源码翻译(预编译)成一种内部编码,这种编码由一连串的虚拟机能够识别指令构成,与CPU的机器码很相似.接下来由C代码中的一个while循环负责解释这些内部编码,这个while循环中有一个很大的switch,一种指令就有对应的一个case. 可能你已经从…
4. 编写高效Java程序 4.1 面向对象 构造器参数太多怎么办? 正常情况下,如果构造器参数过多,可能会考虑重写多个不同参数的构造函数,如下面的例子所示: public class FoodNormal { //required private final String foodName;//名称 private final int reilang;//热量 //optional private final int danbz;//蛋白质 private final int dianfen;…
如何能做出高效的web前端程序是我每次做前端开发都会不自觉去考虑的问题.几年前雅虎里牛逼的前端工程师们出了一本关于提升web前端性能的书籍,轰动了整个web开发技术界,让神秘的web前端优化问题成为了大街的白菜,web前端优化变成了菜鸟和大牛都能回答的简单问题,当整个业界都知道了惊天秘密的答案,那么现有的优化技术已经不能对你开发的网站产生的质的飞越,为了让我们开发的网站性能比别人的网站更加优秀,我们需要更加深入的独立思考,储备更加优秀的技能. Javascript里的事件系统是我想到的第一个突破…
原文转自:http://blog.jobbole.com/80170/ 如何能做出高效的web前端程序是我每次做前端开发都会不自觉去考虑的问题.几年前雅虎里牛逼的前端工程师们出了一本关于提升web前端性能的书籍,轰动了整个web开发技术界,让神秘的web前端优化问题成为了大街的白菜,web前端优化变成了菜鸟和大牛都能回答的简单问题,当整个业界都知道了惊天秘密的答案,那么现有的优化技术已经不能对你开发的网站产生的质的飞越,为了让我们开发的网站性能比别人的网站更加优秀,我们需要更加深入的独立思考,储…
jQuery的编写原则: 一.不要过度使用jQuery 1. jQuery速度再快,也无法与原生的javascript方法相比,而且建立的jQuery对象包含的信息量很庞大.所以有原生方法可以使用的场合,尽量避免使用jQuery. 例如: $("a").click(function(){ alert($(this).attr("id")); }); 改良后↓ $("a").click(function(){ alert(this.id); });…
讨论jQuery和javascript性能的文章并不罕见.然而,本文我计划总结一些速度方面的技巧和我本人的一些建议,来提升你的jQuery和javascript代码.好的代码会带来速度的提升.快速渲染和响应意味着更好的用户体验. 首先,在脑子里牢牢记住jQuery就是javascript.这意味着我们应该采取相同的编码惯例,风格指南和最佳实践. 首先,如果你是一个javascript新手,我建议您阅读 <给JavaScript初学者的24条最佳实践>http://youngsterxyf.gi…
jQuery的编写原则: 一.不要过度使用jQuery 1. jQuery速度再快,也无法与原生的javascript方法相比,而且建立的jQuery对象包含的信息量很庞大.所以有原生方法可以使用的场合,尽量避免使用jQuery. 例如: $("a").click(function(){ alert($(this).attr("id")); }); 改良后↓ $("a").click(function(){ alert(this.id); });…
原文地址:http://www.cnblogs.com/ppforever/p/4084232.html 最近写了很多的js,虽然效果都实现了,但是总感觉自己写的js在性能上还能有很大的提升.本文我计划总结一些网上找的和我本人的一些建议,来提升你的jQuery和javascript代码.好的代码会带来速度的提升.快速渲染和响应意味着更好的用户体验.谨以此文来提醒自己. 首先,跟大家推荐一下jQuery API 文档 http://www.css88.com/jqapi-1.9/ ,她会告诉你使用…
本文地址:http://www.cnblogs.com/archimedes/p/writing-efficient-c-and-code-optimization.html,转载请注明源地址. 说明: 本篇文章翻译自:http://www.codeproject.com/Articles/6154/Writing-Efficient-C-and-C-Code-Optimization 其中参考了文章:http://www.cppblog.com/xlander/archive/2006/07/…
转自:http://www.ituring.com.cn/article/177180 作者/ Erik Hellman Factor10咨询公司资深移动开发顾问,曾任索尼公司Android团队首席架构师,主导Xperia系列产品开发:精通移动应用.Web技术.云计算和三维图形,定期在DroidCon.JFokus.JavaOne和其他专业开发人员大会上发表演讲.关于Erik的更多信息,可访问他的博客http://blog.hellsoft.se. Java平台一般有三个版本:Java ME(微…
js代码,前端都会写.但细节决定成败,代码是否优雅.规范,可以看得出一个JScoder的水平来. 曾经多次被项目组长吐槽,并被授予一本秘笈,上面有关于JS编程规范的一些总结. 无奈秘笈不能长借,无奈只能用最愚蠢的办法,拍照mark下,然后今天抽空整理整理. 废话到此为止,下面言归正传. 1.语句结尾总是加上分号 JS的语句,要么独占一行,要么以分号结尾. 虽然绝大多数情况下独占一行的js代码缺省分号也不会产生错误(这全赖于分析器的自动分号插入机制),但依旧不推荐缺省分号. 因为自动分号插入机制的…
基于Android相关设备作为嵌入式设备范畴,在书写App应用的时候要格外关注效率.而且受电池电量的限制.这就导致嵌入式设备有诸多考虑.有限处理能力.因此就要求我们尽量去写高效的代码. 本文讨论了非常多能让开发人员使他们的程序执行更有效的方法,遵照这些方法,你能够使你的程序发挥最大的效力. 引言 对于占用资源的系统.有两条基本原则: 不要做不必要的事 不要分配不必要的内存 全部以下的内容都遵照这两个原则. 1.避免建立对象 世界上没有免费的对象.尽管GC为每一个线程都建立了暂时对象池,能够使创建…