jQuery-

jQuery8293-8309行

技术分享
 1 jQuery.each( [ "get", "post" ], function( i, method ) {
 2     jQuery[ method ] = function( url, data, callback, type ) {
 3         // Shift arguments if data argument was omitted
 4         if ( jQuery.isFunction( data ) ) {
 5             type = type || callback;
 6             callback = data;
 7             data = undefined;
 8         }
 9 
10         return jQuery.ajax({
11             url: url,
12             type: method,
13             dataType: type,
14             data: data,
15             success: callback
16         });
17     };
18 });
View Code

if

$.getJSON(
        "*****",
        function(data){}
    );

的代码处理类似这样的请求:

假如参数为空,那么,第二个参数是一个方法。所以需要判断第二个参数是不是为function。那么就有了下面的这个方法:

ifFunction代码如下:

isFunction: function( obj ) {
            return jQuery.type(obj) === "function";
        }

这里有一个判断类型的函数:jQuery.type(obj)

技术分享
type: function( obj ) {
            if ( obj == null ) {
                return obj + "";
            }
            // Support: Android<4.0, iOS<6 (functionish RegExp)
            return typeof obj === "object" || typeof obj === "function" ?
                class2type[ toString.call(obj) ] || "object" :
                typeof obj;
        }
View Code

这个代码有点搞不懂啊。

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。