我开始使用Javascript OOP,但我仍然是初学者, 我创建了一个类,我想知道在类中是否存在deleteQuote函数?
这是我的班级代码
class Quote{
deleteQuote(callback){
$('tr#'+callback.quoteid).hide('slow', function(){
$(this).remove();
});
}}
var quote = new Quote();
var y = quote.deleteQuote();
console.log(typeof y);
谢谢
答案 0 :(得分:2)
您可以在hasOwnProperty()
的{{1}}对象上prototype
Quote
答案 1 :(得分:1)
您应该这样使用它的typeof
:
class Quote {
deleteQuote(callback) {
$('tr#' + callback.quoteid).hide('slow', function() {
$(this).remove();
});
}
}
var quote = new Quote();
let exists = typeof quote.deleteQuote !== "undefined";
console.log(exists);
typeof返回您提供的元素的变量类型。在这种情况下,当它返回undefined
时,表示未定义您要搜索的对象,方法,属性,函数等。
答案 2 :(得分:0)
我也使用Ajax从PHP接收类名和函数名。 但这对我的代码不起作用
$.post(action, object, function(data){
if(typeof [data.className.methodName] === "function")
console.log(101)
return data;
}, 'json');
请您更正我的代码,我想检查JS类“ className ”是否包含我的“ methodName ”
答案 3 :(得分:0)
我不知道为什么会收到错误消息 这是我的代码
cls = data.className;
console.log(cls.prototype.hasOwnProperty('deleteQuote'));
控制台错误:
TypeError: cls.prototype is undefined