javascript - 我们可以在javascript中向后写一个if语句吗?
问题描述
这两种表达方式有什么区别?
if (userStatus === 'OFFLINE') document.forms.newMessage.fields.disabled = true;
和
document.forms.newMessage.fields.disabled = (userStatus === 'OFFLINE');
解决方案
document.forms.newMessage.fields.disabled = (userStatus === 'OFFLINE')
相当于
if (userStatus === 'OFFLINE') {
document.forms.newMessage.fields.disabled = true;
} else {
document.forms.newMessage.fields.disabled = false;
}
注意 else 语句。如果没有 else 语句,那么您的第一段代码仅document.forms.newMessage.fields.disabled
在满足条件时设置(userStatus === 'OFFLINE')
。
考虑
document.forms.newMessage.fields.disabled
已经为真但userStatus
为的情况"ONLINE"
。
对于您的第一段代码,document.forms.newMessage.fields.disabled
将保持为真(因为缺少 else 语句),但对于第二段代码,它将被设置为假。
推荐阅读
- azure-keyvault - azure keyvault:本地验证由 EC-HSM 签名的数据
- python - 有没有办法在两个 lon、lat 对之间的线上使用 Scattergeo
- jquery - 选择除特定区域以外的所有 FORM 元素
- c# - CRON 和执行之间的 Azure 功能差异(机器运行良好) - 我是否需要“重置”存储帐户或更改存储时区?
- python - 将单个元素添加到numpy中数组的所有元素
- weblogic - weblogic补丁/和计算需要的补丁
- java - Java:原始匿名类在其方法中丢失了泛型类型
- r - 如何使用 R apply() 计算三维数组中的百分比差异
- vector - [T]EE 和 [T]BE 是否具有相同的特征值?
- sql-server - 使用 ADF 为本地和 datalake 存储第 2 代构建 Azure 云解决方案作为源