Не может преобразовать неопределенное в объект
Я получаю сообщение об ошибке "Не удается преобразовать неопределенный объект в строку return hasOwnProperty(prop);
и я просто не могу понять, в чем проблема. Я могу опубликовать больше кода, если это необходимо.
getCardProperty : function (card, prop, def) {
if (typeof def === "undefined") {
def = null;
}
// json synckolab object
if (card.synckolab) {
if (card.hasOwnProperty(prop)) // TODO better check for undefined?
{
return hasOwnProperty(prop);
}
return null;
}
1 ответ
Решение
hasOwnProperty(prop)
не существует - вам нужно квалифицировать его с именем объекта. Просто измените это на card.hasOwnProperty(prop)
,
Вы можете упростить это дальше:
if (card.synckolab) {
return card.hasOwnProperty(prop) || null;
}
Это вернется true
или же null
, Или вы можете упростить еще больше:
if (card.synckolab) {
return card.hasOwnProperty(prop);
}
Это вернется true
или же false
,