javascript - 条件或语句的困难
问题描述
我正在迭代HTMLCollection
寻找innerText
是否有innerText
我会知道页面上有错误。但是,在某些情况下innerText === undefined
和其他时候innerText === ""
,我的 if 块中有一个 or 语句。
我的想法是这应该很简单:
if(err_field[field].innerText !== undefined || err_field[field].innerText !== ""){
no_error = false;
}
这不起作用,我可以注销innerText
每个字段并清楚地看到它们都是undefined
or 或""
。
因此,在弄乱了半小时的变体之后,我改变了策略:
if (err_field[field].innerText === undefined || err_field[field].innerText === "") {
}else {
no_error = false;
}
这行得通。为什么?据我所知,这只是上述内容的反面,包括更多开销和不必要的else
声明。我错过了什么吗?我已经尝试了几种变体,包括除了上面的示例之外没有任何效果if (err_field[field].innerText || ...)
。 if (err_field[field].innerText != null || ...)
解决方案
使用您发布的第一个块,而不是 OR 使用 AND 条件,只有这样您才能确保当前元素没有innerText
.
推荐阅读
- javascript - 如何在 JS 中显示我出生以来的毫秒数?
- android - Android 中的 LiveDataScope 与 ViewModelScope
- azure-active-directory - 如何访问 Azure APIM 策略中的 Active Directory 用户/组?
- python - 有没有办法从单个 pytest 测试用例显式生成多个 pytest 结果?
- elasticsearch - 将 index.highlight.max_analyzed_offset 增加到更大的数字会损害查询性能吗?如果有,多少钱,为什么?
- regex - 如何在不使用 foreach 循环的情况下通过管道处理“Select-String -pattern”返回对象?
- java - 如何按用户输入的扩展名和名称搜索文件?
- javascript - 有人可以解释如何拆分整数并返回请求的输出吗?
- php - WordPress 自定义插件在琐碎代码上崩溃
- ruby-on-rails - AWS Cloud9 服务器拒绝连接