在實際開發中,有時我們需要獲取物件或元素的各種狀態,例如是否為陣列、是否為物件、是否為空等,然後根據這些狀態值來決定程式的下一步操作。
jQuery 為我們提供了大量用於檢測操作的工具函數,常見的用於檢測操作的工具函數如表 1 所示。
表 1:常見的用於檢測操作的工具函數
函數 |
說明 |
$.isFunction(obj) |
判斷變數是否為一個函數,返回 true 或 false |
$.isArray(obj) |
判斷變數是否為一個陣列,返回 true 或 false |
$.isEmptyObject(obj) |
判斷變數是否為一個空物件,返回 true 或 false |
$.isPlainObject(obj) |
判斷變數是否為一個原始物件,返回 true 或 false |
$.contains( node1, node2) |
判斷一個 DOM 節點是否包含另一個 DOM 節點,返回 true 或 false |
在這裡,所謂的原始物件,指的是通過
{}
或“new Object()”來建立的物件。
舉例:檢查變數是否為函數
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script src="js/jquery-1.12.4.min.js"></script>
<script>
var fn = function(){};
console.log($.isFunction(fn)); //true
</script>
</head>
<body>
</body>
</html>
控制台輸出結果如圖 1 所示。
圖 1:$.isFunction()