想必你们对于jQuery这个最流行的javascript类库都不陌生,并且只要是前端开发人员确定或多或少的使用或者接触过,在今天的这篇文章中,参考了一些资料及实际使用效率,将介绍一些书写高质量jQuery代码的原则,不仅仅会告诉你如何去书写,也会告诉你为何这样书写,但愿你们会以为有所帮助。javascript
这个不单单是jQuery,全部javascript开发过程当中,都须要注意,请必定不要定义成以下:css
$loading = $(
'#loading'
);
//这个是全局定义,不知道哪里位置倒霉引用了相同的变量名,就会郁闷至死的
html
若是你使用多个变量的话,请以下方式定义:前端
var
page = 0,
$loading = $(
'#loading'
),
$body = $(
'body'
);
申明或者定义变量的时候,请记住若是你定义的是jQuery的变量,请添加一个$符号到变量前,以下:java
var
$loading = $(
'#loading'
);
缓存
这里定义成这样的好处在于,你能够有效的提示本身或者其它阅读你代码的用户,这是一个jQuery的变量。性能
在jQuery代码开发中,咱们经常须要操做DOM,DOM操做是很是消耗资源的一个过程,而每每不少人都喜欢这样使用jQuery:编码
$(
'#loading'
).html(
'完毕'
);
$(
'#loading'
).fadeOut();
var
$loading = $(
'#loading'
);
$loading.html(
'完毕'
);$loading.fadeOut();
上面那个例子,咱们能够写的更简洁一些:spa
var
$loading = $(
'#loading'
);
$loading.html(
'完毕'
).fadeOut();
尽可能把一些代码都整合到一块儿,请勿这样编码:code
// !!反面人物$button.click(function(){
$target.css(
'width'
,
'50%'
);
$target.css(
'border'
,
'1px solid #202020'
);
$target.css(
'color'
,
'#fff'
);
});
$button.click(
function
(){
$target.css({
'width'
:
'50%'
,
'border'
:
'1px solid #202020'
,
'color'
:
'#fff'
});
});
请勿以下方式书写:$(
'.something > *'
);
这样书写更好:$(
'.something'
).children();
请勿以下书写:$(
'#something #children'
);
这样就够了:$(
'#children'
);
请勿以下书写:
if
(!$something) {
$something = $(
'#something '
);
}
$something= $something|| $(
'#something'
);
与其这样书写:if
(string.length > 0){..}
不如这样书写:if
(string.length){..}
若是你使用比较新版本的jQuery类库的话,请使用.on,其它任何方法都是最终使用.on来实现的。
最新版本的jQuery拥有更好的性能,可是最新的版本可能不支持ie6/7/8,因此你们须要本身针对实际状况选择。
若是使用原生的Javascript也能够实现jQuery提供的功能的话,推荐使用原生的javascript来实现。