我正在使用混合使用jQuery DataTables插件的舊版代碼(版本1.10。一些舊代碼繞過jQuery對象,並且一些舊代碼通過DataTables API objects傳遞。我想讓所有新的代碼接受一個jQuery對象或一個DataTables API對象,但是我一直未能檢測到一個變量引用了一個DataTables API對象。測試jQuery-DataTables API對象
我能找到的唯一檢測方法在API中,isDataTable不適用 - 它爲表格選擇一個字符串並返回該選擇是否已轉換爲數據表格。
中的「類別檢測」方法不工作; typeof
返回"object"
,constructor.name
返回"Object"
,我不知道用於instanceof
或isPrototypeOf
的構造函數。
正如this answer建議(以同樣的問題),Object.prototype.toString.call(var)
返回"[object Object]"
在Chrome中,console.log(var)
產生看起來有一些其他類的信息摘要:
▶ _Api {context: Array[1], selector: Object, ajax: Object}
我想,意味着有是我可以使用的地方,但this question關於Chrome的名稱沒有有用的答案。
如何檢測變量引用jQuery-DataTables API對象的時間?
「!+」是語法錯誤,我假設這是「!=」的錯字 – ShadSterling
原來我使用的是DataTable 1.10.3,解決方案工作謝謝! – ShadSterling
不客氣。很高興聽到它,但我會在DataTables論壇上發佈這個問題,看看艾倫賈丁是否有更好的方法來處理它。我擔心這可能會突破某處。是的,這是一個語法錯誤,我的錯誤。我會解決它,謝謝。愚蠢的換檔鍵。 – BobRodes