javascript - Angular target.getAttribute() 检查空条件
问题描述
我在使用 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);
我要做的是从 getAttribute() 中检查 timindId,如果它不为空,则设置它。如果为空,则从另一个字段中获取属性()然后设置它。我的控制台如下:
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);
谢谢!
解决方案
if
您应该在语句中检查“null”作为字符串。
const timingId = target.getAttribute("timingId")
if (timingId != null && timingId !== "null") {
this.timingId = timingId
} else {
this.timingId = target.getAttribute("index");
}
推荐阅读
- c# - 不同 SignalR 集线器之间的通信?
- c# - 如何将 Polly 策略添加到使用工厂创建的改装客户端?
- git - 无法使用 ssh 推送到 git
- python - 为什么我在这个 API 调用中得到 TypeError 字符串索引必须是整数?(播种 Django DB)
- android - 在 android Studio 中发现 java.lang.reflect.InvocationTargetException(无错误消息)
- python - 如何实现Player结果映射?
- r - 如何计算 R 中单元格内由逗号分隔的唯一 2 个单词短语?
- python - f.write(buf) TypeError: 需要一个类似字节的对象,而不是 'str'
- excel - 有没有办法指定 GetOpenFilename 使用的目录?
- python - Leetcode 中的二和问题的算法没有输出