jQuery 各類判斷函式彙總

2021-09-08 18:33:31 字數 2787 閱讀 7654

常用的判斷函式有

type,

isemptyobject,

isfunction,

iswindow,

isplainobject,

isarraylike,

isarray,

isnumeric,

documentishtml ,isxml,並對其原始碼進行了解析。

type: function

( obj )

//support: safari <= 5.1 (functionish regexp)

//利用事先存好的 hash 表 class2type 作精準判斷

return

typeof obj === "object" || typeof obj === "function" ?class2type[ core_tostring.call(obj) ] || "object":

typeof

obj;

},

首先其修正了 typeof null 為object的缺陷。其次利用事先存好的 hash 表 class2type 作精準判斷。

其中core_tostring=obj.tostring; obj是乙個物件

//

populate the class2type map

jquery.each("boolean number string function array date regexp object error".split(" "), function

(i, name) );

var obj=;arr=;

console.log(obj.tostring.call(arr));

//[object array]

console.log(obj.tostring.call(obj));//

[object object]

//

檢查物件是否為空(不包含任何屬性)

isemptyobject: function

( obj )

return

true

; },

//

確定它的引數是否是乙個數字

//isfinite判斷陣列的元素是否是有界的

isnumeric: function

( obj ) ,

isfunction: function

( obj ) ,

主要是利用前面的type.

//

判斷傳入物件是否為 window 物件

iswindow: function

( obj ) ,

//

判斷傳入物件是否為陣列

isarray: array.isarray,

利用陣列自帶的isarray來判斷

var arr=;

console.log(array.isarray(arr));

//true

//

測試物件是否是純粹的物件

//通過 "{}" 或者 "new object" 建立的

isplainobject: function

( obj )

//support: firefox <20

//the try/catch suppresses exceptions thrown when attempting to access

//the "constructor" property of certain host objects, ie. |window.location|

//try }

catch

( e )

//if the function hasn't returned already, we're confident that

//|obj| is a plain object, created by {} or constructed with new object

return

true

; },

//

判斷是否是陣列,類陣列,帶length的json,是的話就返回真

function

isarraylike( obj )

//元素節點也是類陣列

if ( obj.nodetype === 1 &&length )

return type === "array" || type !== "function" &&( length === 0 ||

typeof length === "number" && length > 0 && ( length - 1 ) in

obj );

}

/*

* * detect xml

* @param elem an element or a document */

isxml = sizzle.isxml = function

( elem ) ;

//

support tests

//不是xml就是html

documentishtml = !isxml( doc );

這判斷也是神判斷啊

各類SQL語句彙總

1.將結果進行排序後,對排序後的資料進行排名 select t.score score,cast case when rowtotal t.score then rownum rownum 0 when rowtotal t.score then rownum rownum 1 when rowto...

destoon各類呼叫彙總

根目錄 模板目錄和樣式目錄 匯入頭腳 對應模組首頁 注 moduleid表示對應模組的id號 對應模組列表頁 list.php?catid catid 注 catid表示呼叫的分類的id號 發布某模組資訊 my.php?mid moduleid action add 呼叫廣告 注 27表示廣告位為2...

各類損失函式

1 0 1損失 zero one loss 2 感知損失 1.mse mean squared error 均方誤差 是指引數估計值與引數真值之差平方的期望值 2.rmse 均方根誤差 是均方誤差的算術平方根 3.mae mean absolute error 平均絕對誤差是絕對誤差的平均值 平均絕...