#javascript #angular
Вопрос:
У меня возникли некоторые проблемы с угловым. Я пытаюсь соответственно установить другое значение. Ниже в качестве моего кода:
console.log("JJJJJJJ " target.getAttribute("timingId"));
console.log("KKKKKKKKK " target.getAttribute("index"));
if(target.getAttribute("timingId") != null){
console.log("INSIDE ORI SET");
this.timingId = target.getAttribute("timingId");
} else {
console.log("INSIDE INDEX SET");
this.timingId = target.getAttribute("index");
}
console.log("HAHAHAHAHAHAH " this.timingId);
То, что я пытаюсь сделать, это проверить timindId из getAttribute (), если он не равен нулю, затем установите его. Если значение равно null, getAttribute() из другого поля, затем установите его. Моя консоль в соответствии со следующим:
JJJJJJJ null
KKKKKKKKK 1
INSIDE ORI SET
HAHAHAHAHAHAH null
Я не уверен, почему, когда он будет обнаружен как null, он не войдет в оператор else и не установит значение. Есть какие-нибудь идеи?
отредактированный
console.log(typeof target.getAttribute("timingId"));
console.log("JJJJJJJ " target.getAttribute("timingId"));
console.log("KKKKKKKKK " target.getAttribute("index"));
if(target.getAttribute("timingId") != null || target.getAttribute("timingId") != "null"){
console.log("INSIDE ORI SET");
this.timingId = target.getAttribute("timingId");
} else {
console.log("INSIDE INDEX SET");
this.timingId = target.getAttribute("index");
}
console.log("HAHAHAHAHAHAH " this.timingId);
Спасибо!
Комментарии:
1. Возможно ли, что значением вашего атрибута является строка «null»?
2. @AlbertoRivera только что попытался добавить дополнительную проверку условий для строки «null», но она также не работает
3. Каков результат
console.log(typeof target.getAttribute("timingId"))
?4. @AlbertoRivera, который был распечатан как строка, но он все еще находится внутри оператора if вместо else
5.
if
Проверка неверна. Если timingId является строкой «null», он пройдет первую проверку и не будет оценивать вторую. Это должно бытьamp;amp;
вместо||
. Я опубликую это в качестве своего ответа
Ответ №1:
Вы должны проверить наличие «null» в качестве строки в if
операторе.
const timingId = target.getAttribute("timingId")
if (timingId != null amp;amp; timingId !== "null") {
this.timingId = timingId
} else {
this.timingId = target.getAttribute("index");
}