JavaScript编程开发中的五个实用小技巧

 更新时间:2010年07月22日 00:58:01   作者:  
下面的5点说明确实不错,提高性能与可读性,大家可以根据需要选择使用。
真是五个很quick的小提示:

只在<form>元素上使用submit事件
如果要在form中绑定事件处理程序时,应该只在<form>元素上绑定submit事件,而不是给提交按钮绑定click事件。
March:这个方式固然很好,但是,公司开发时使用了Web Flow,一个页面就一个大form,而里面可能有若干个提交按钮,所以不得不把部分事件处理程序绑定在了提交按钮的click事件上。

可点击的都应该是链接
不要给除锚元素(<a>)以外的元素绑定click事件。这一点对于键盘用户很重要,因为他们在仅通过键盘获取元素焦点时会遇到困难。
March:不过个人感觉锚元素还是应该只用作链接,而一些功能性的操作(比如Google Reader的Mark all as new),最好还是用<span>来标注,accessibility的问题可以通过快捷键等方式解决。这样做可以更好的还原HTML元素的语义。

简单的for循环优化
在你写一个for循环时,有个很简单的技巧能够提高性能。
复制代码 代码如下:
for ( var i = 0; i < elements.length; ++i )

使用下面的语句代替上面的:
复制代码 代码如下:
for ( var i = 0, j = elements.length; i < j; ++i )

这样可以把元素的个数(elements.length的值)储存在一个变量j中,这样就不必在每次循环时都计算一遍元素的个数。

用匿名函数来作为事件处理程序
尤其是对于短小的函数,创建一个匿名函数会比使用一个命名函数的引用更具可读性。
复制代码 代码如下:
anchor.onclick = function() { map.goToPosition( home ); return false; }

March:在较复杂的JavaScript开发时还是使用命名函数效率更高。

使用Array.join代替字符串连接(concatenating strings)
在将很多字符串、变量等连接成一个很长的字符串时,将所有字符串和变量放入一个数组,然后用join方法将他们组成一个长字符串,这样无论从代码可读性还是从性能上都更胜于字符串连接。
复制代码 代码如下:

var text = 'There are' + elements.length + 'members in the elements array.';
var text = ['There are', elements.length, 'members in the elements array.'].join(' ');

相关文章

  • 微信小程序配置服务器提示验证token失败的解决方法

    微信小程序配置服务器提示验证token失败的解决方法

    这篇文章主要介绍了微信小程序配置服务器提示验证token失败的解决方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • 使用JavaScript 实现时间轴与动画效果的示例代码(前端组件化)

    使用JavaScript 实现时间轴与动画效果的示例代码(前端组件化)

    这篇文章主要介绍了使用JavaScript 实现时间轴与动画效果的示例代码(前端组件化),本文重点给大家介绍基础的动画类实现时间轴,通过示例代码给大家介绍的很详细,需要的朋友可以参考下
    2021-04-04
  • 写了10年的Javascript也未必全了解的连续赋值运算

    写了10年的Javascript也未必全了解的连续赋值运算

    很喜欢 蔡蔡 的这个标题,实际蔡蔡已经分析过了,这里借用了。或许有点标题党的意思。看完就知了。
    2011-03-03
  • ES6中的WeakMap和WeakSet特性和用途详解

    ES6中的WeakMap和WeakSet特性和用途详解

    在JavaScript的ES6版本中,引入了WeakMap和WeakSet这两种新的数据结构,与Map和Set相比,它们有一些特殊的特点和用途,使它们在处理内存泄漏问题、管理对象私有数据、处理对象的唯一性等场景中有显著的优势,本文将深入探讨WeakMap和WeakSet的特性和用途,一起看看吧
    2023-12-12
  • 原生JS无缝滑动轮播图

    原生JS无缝滑动轮播图

    这篇文章主要为大家详细介绍了原生JS实现淡出淡入轮播图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • 详解微信小程序之提高应用速度小技巧

    详解微信小程序之提高应用速度小技巧

    这篇文章主要介绍了详解微信小程序之提高应用速度小技巧,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • javascript控制图片播放的实现代码

    javascript控制图片播放的实现代码

    这篇文章主要介绍了javascript控制图片播放的实现代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-08-08
  • Three.JS实现三维场景

    Three.JS实现三维场景

    这篇文章主要为大家详细介绍了Three.JS实现三维场景,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-12-12
  • 一个轻量级的XHTML右键菜单[支持IE和firefox]

    一个轻量级的XHTML右键菜单[支持IE和firefox]

    一个轻量级的XHTML右键菜单[支持IE和firefox]...
    2007-01-01
  • javascript常用函数(2)

    javascript常用函数(2)

    这篇文章主要介绍了javascript常用函数,再来15个常用函数,都具有很高的实用性,感兴趣的小伙伴们可以参考一下
    2015-11-11

最新评论