判斷是否為jquery物件使用什麼運算符

青灯夜游
發布: 2022-03-16 15:35:09
原創
1973 人瀏覽過

判斷一個物件是否為jquery物件使用「instanceof」運算子;instanceof運算子可以判斷一個物件是否為某指定資料類型,語法為「if(物件變數instanceof jQuery){//是jQ物件}else{//不是}」。

判斷是否為jquery物件使用什麼運算符

本教學操作環境:windows7系統、jquery1.10.2版本、Dell G3電腦。

判斷一個物件是否為jquery物件使用「instanceof」運算子。

instanceof:判斷一個物件是否為某一資料類型,或一個變數是否為一個物件的實例;傳回boolean類型

範例:

var obj = $("div");
if(obj instanceof jQuery){
alert("这是一个jQuery对象");
}else{
alert("这是一个其它对象")
}
登入後複製

判斷是否為jquery物件使用什麼運算符

說明:instanceof和typeof都能用來判斷一個變數是否為空或是什麼類型的變數。 

typeof:用來取得一個變數的型別,typeof一般只能回傳以下幾個結果:number、boolean、string、function、object、undefined。

我們可以用typeof來取得一個變數是否存在,如if(typeof a!="undefined"){},而不要去用if(a)因為如果a不存在(未宣告)則會出錯,對於Array、Null等特殊物件使用typeof 一律傳回object,這正是typeof的限制。 

如果我們希望取得物件是否為數組,或判斷某個變數是否為某個物件的實例則要選擇使用instanceof

instanceof用來判斷一個變數是否某個物件的實例,如

var a=new Array();
alert(a instanceof Array);   //会返回true

alert(a instanceof Object)   //也会返回true;这是因为Array是object的子类

function test(){};
var a=new test();
alert(a instanceof test)   //会返回true
登入後複製

function的arguments,我們大家也許都認為arguments是一個Array,但如果使用instaceof去測試會發現arguments不是一個Array對象,儘管看起來很像。 

測試 

var a=new Array();
if (a instanceof Object) 
  alert('Y');
else alert('N');   //Y
登入後複製

但 :

if (window instanceof Object) 
  alert('Y');
else alert('N');    //N
登入後複製

所以,這裡的instanceof測試的object是指js語法中的object,不是指dom模型物件。 

使用typeof會有些差異 

alert(typeof(window)    //会得 object
登入後複製

【推薦學習:jQuery影片教學web前端開發

以上是判斷是否為jquery物件使用什麼運算符的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板