可以說如果我有一個功能a。我想知道它的內置功能或用戶定義的功能。
我試過檢查a.toString()是否有[native code]
,但是具有子字符串[native code]
的用戶定義函數會失敗。有沒有更好的方法來做到這一點?如何查找功能是否內置功能或用戶定義
回答
所以,這裏的一些代碼來檢查:
var rgx = /\[native code\]\s*\}\s*$/;
function some(){
'[native code]'
}
console.log(
rgx.test(print.toString()),
rgx.test(some.toString())
);
我已經使用過'some.toString()。indexOf('[native code]',some.toString()。length - '[native code]'。length)!== -1 '測試它..使用正則表達式好像也不錯 – everconfusedGuy
你的代碼是否可以使用內置函數?當你查看字符串化函數的結尾時,但它以'[native code]}結尾'而且在IE中有新行'[native code]'和'}',所以正則表達式也可以處理它。祝你好運! – tenbits
一個,也許是天真的,方法是將測試功能名稱中是否存在該文件的屬性:
function newFunction(){
return true;
}
console.log('newFunction' in document, 'toString' in document);
這,當然,不詳盡測試,如果沒有失敗功能被創建爲一個prototype
的延伸,例如:
function newFunction(){
return true;
}
Object.prototype.newFunctionName = function() {
return 10 * 2;
};
console.log('newFunction' in document, 'toString' in document, 'newFunctionName' in document); // false, true, true
鑑於它也失敗了'eval' in document
(在它返回false
),那麼這將或可以,只有合作,以確定對象的原型方法。充其量,這是一個不完整的解決方案。
'eval'在文檔中返回false – everconfusedGuy
不幸的是,我很尷尬,承認我有沒有更好的想法... :( –
- 1. 查看或用戶定義的功能?
- 2. 如何定義查找功能?
- 3. jQuery - 檢查功能是否定義
- 4. 不同的Vim高亮組用戶自定義功能和內置功能
- 5. 如何定義內嵌或內部警報功能,這是定義大多在Flex中單獨的功能?
- 6. os x自定義字典或自定義查找功能
- 7. 否定功能的功能
- 8. 查找功能定義在具有:塊
- 9. 用戶定義的功能是「暫停」狀態是否正常?
- 10. 查找功能
- 11. 重新定義內置功能
- 12. 定義內部功能
- 13. 是否有類(功能,方法等或任何功能)像下面的功能?
- 14. 測試是否定義了Sass功能
- 15. 如何定義零功能?
- 16. 什麼決定是否調用「成功」或「錯誤」功能?
- 17. 定義功能
- 18. 如何在Volt(Phalcon)中設置用戶定義的功能
- 19. 如何檢查用戶是否具有WordPress的'manage_options'功能?
- 20. 查找多餘的用戶功能
- 21. 功能是未定義
- 22. 如何使用我的自定義功能切換此功能
- 23. 如何使一個功能,讓用戶作出是/否決定
- 24. 我可以使用此自定義功能替換內置的pow功能嗎?
- 25. jquery查找功能
- 26. TSQL查找功能
- 27. 查找「卡」功能
- 28. VBA查找功能
- 29. 查找根/功能
- 30. ffplay查找功能
_Custom_功能'的toString()'不能結束'[本地代碼]}',否則函數(源)會因語法錯誤編譯。 – tenbits
哦,這是有道理..guess我應該有更多的想法 聚苯乙烯 - 我可以接受它,如果發佈這是一個答案 – everconfusedGuy