Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/389.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 请求帮助阅读一行JS_Javascript - Fatal编程技术网

Javascript 请求帮助阅读一行JS

Javascript 请求帮助阅读一行JS,javascript,Javascript,有人能告诉我这是什么吗?在下面的js中是什么意思?我没有对JS代码进行换行,因为我不想无意中更改其含义 errMess = t.origStatus != undefined && t.status != t.origStatus && t.statuseffective == null ? errMess + t.systemname + ": Status effective date invalid.\n" : errMess; 我把这读作: errMes

有人能告诉我这是什么吗?在下面的js中是什么意思?我没有对JS代码进行换行,因为我不想无意中更改其含义

errMess = t.origStatus != undefined && t.status != t.origStatus && t.statuseffective == null ? errMess + t.systemname + ": Status effective date invalid.\n" : errMess;
我把这读作:
errMess=
t、 原始状态不等于未定义和
t、 状态不等于原始状态和

statuseffective等于null这是if子句的简写版本。有关更多信息,请查看。 完整的代码如下所示:

if ( t.origStatus != undefined && t.status != t.origStatus && t.statuseffective == null ) {
  errMess = errMess + t.systemname + ": Status effective date invalid.\n";
} else {
  errMess = errMess;
}

这是if子句的简写版本。有关更多信息,请查看。 完整的代码如下所示:

if ( t.origStatus != undefined && t.status != t.origStatus && t.statuseffective == null ) {
  errMess = errMess + t.systemname + ": Status effective date invalid.\n";
} else {
  errMess = errMess;
}

正在讨论的结构是一个问题

代码也可以写成:

if (t.origStatus != undefined
     && t.status != t.origStatus
     && t.statuseffective == null) {
    errMess = errMess + t.systemname + ": Status effective date invalid.\n";
} else {
    errMess = errMess;
}
那么,
X=A?B:C
相当于:

if (A) {
    X = B;
} else {
    X = C;
}
补充说明:

  • t.origStatus!=未定义的
    相当于t.origStatus!=null,因为在相等比较中,
    null
    等于
    未定义
    。如果与
    null
    undefined
    进行比较非常重要,请使用identity运算符:
    t.origStatus===undefined

    • 所讨论的结构是一个

      代码也可以写成:

      if (t.origStatus != undefined
           && t.status != t.origStatus
           && t.statuseffective == null) {
          errMess = errMess + t.systemname + ": Status effective date invalid.\n";
      } else {
          errMess = errMess;
      }
      
      那么,
      X=A?B:C
      相当于:

      if (A) {
          X = B;
      } else {
          X = C;
      }
      
      补充说明:

      • t.origStatus!=未定义的
        相当于t.origStatus!=null,因为在相等比较中,
        null
        等于
        未定义
        。如果与
        null
        undefined
        进行比较非常重要,请使用identity运算符:
        t.origStatus===undefined

      它是If-THEN-ELSE的简写符号,如下所示:

        x ? A : B
      

      它的意思是“如果x比A为真,那么B为真”。这里解释得很好:

      它是If-THEN-ELSE的简写符号,如下所示:

        x ? A : B
      

      它的意思是“如果x比A为真,那么B为真”。这里有很好的解释:

      @yes123我不需要它,但这是
      errMess=..的字面翻译版本:错误的混乱。省略它会使答案不正确。@rob-w谢谢这正是我需要的。。。但我不知道怎么问@Rob-w再过几分钟,我就不会把你的答案标记为正确了。@dlackey:请不要添加else语句,因为现在它已经没有用了。Rob-w谢谢你的补充说明。==这是一个很好的提示@是123-我确实明白你在说什么,但RobW answer仍然回答了翻译它的原始问题,但我确实明白你所说的是不需要的。我将从我的代码中删除它来清理一些东西。@yes123我不需要它,但这是
      errMess=..的字面翻译版本:错误的混乱。省略它会使答案不正确。@rob-w谢谢这正是我需要的。。。但我不知道怎么问@Rob-w再过几分钟,我就不会把你的答案标记为正确了。@dlackey:请不要添加else语句,因为现在它已经没有用了。Rob-w谢谢你的补充说明。==这是一个很好的提示@是123-我确实明白你在说什么,但RobW answer仍然回答了翻译它的原始问题,但我确实明白你所说的是不需要的。我将把它从代码中删除,以便清理一下。解释是针对C的,但含义是相同的。解释是针对C的,但含义是相同的