这里罗列一些jQuery的细小知识点,如javascript面向对象编程理解,$.extend, $.data等javascript
0. javascript面向对象编程理解html
关于javascript面向对象编程理解,阮一峰在其4篇博客针对“封装”,“构造函数的继承”,“非构造函数的继承”,“继承机制的设计思想”中进行了解说,很是容易懂。
java
1. $.extendjquery
jQuery的extend方法是在写jQuery插件过程当中经常使用的方法,该方法有一些重载模型,详见这里git
2. $.datagithub
data方法用来向被选元素附加数据,或者从被选元素获取数据,详见这里编程
3. $.fnide
$.fn = $.prototype{函数
init: function(){},idea
....
}
4. $.expr[:]
能够结合$.extend和$.expr[:]来构建本身的伪类选择器,如jquery.validataion中实例:
// Custom selectors
$.extend( $.expr[ ":" ], {
// http://jqueryvalidation.org/blank-selector/
blank: function( a ) {
return !$.trim( "" + $( a ).val() );
},
// http://jqueryvalidation.org/filled-selector/
filled: function( a ) {
return !!$.trim( "" + $( a ).val() );
},
// http://jqueryvalidation.org/unchecked-selector/
unchecked: function( a ) {
return !$( a ).prop( "checked" );
}
});
5. $.trim
$.trim方法用来去掉字符串中先后空格
$.trim(' I love China '); // return 'I love China';
6. == vs ===[stackoverflow]
==:equal operator
====:identity operator
==在比较过程当中会将两个不一样类型的变量转换成相同类型而后进行比较,===则不会进行类型转换;
若是==和===两端要比较的对象是相同类型的则能够认为==和===没有区别。