Freecodecamp: ===与!==相反

创建于 2016-11-22  ·  13评论  ·  资料来源: freeCodeCamp/freeCodeCamp


挑战名称


https://www.freecodecamp.com/challenges/comparison-with-the-strict-inequality-operator

问题说明


实际上,!==与严格相等运算符并不相反。 ===意味着等于值等于类型。 !==表示不等于值或类型不等于,这意味着如果一个条件为真,则表达式将返回true,但是对于严格相等运算符,两个条件都必须为true,我认为应提供这些信息。

浏览器信息

  • 浏览器名称,版本:Google Chrome,54.0.2840.99 m(64位)
  • 作业系统:Windows 10
  • 移动设备,台式机或平板电脑:台式机
help wanted

最有用的评论

我可能喜欢添加“逻辑”一词的想法,如下所示:

严格不等式运算符(!==)与严格相等运算符在逻辑上相反。

然后,也许我们向上面的站点添加一个MDN链接?

所有13条评论

它不是相等的值和/或不相等的类型。 参见此处: https :

我认为这种看法仍然是正确的。 但是其他人可以参与进来。

我们可以重新编写说明以反映!==的和/或性质

操作数1 | 操作数2 | 州|
--------------- | ---------------- | ----------- |
“一个字符串” | “另一个字符串” | true
1 | 2 | true
1 | '1'| true
4 | 4 | false
'字符串'| '字符串'| false

@Bouncey但不是!=====对立面吗? 还是有我不知道的替代方法?

@dhcodes是,不是排序

问题出在我们的挑战说明中

严格不等式运算符( !== )与严格相等运算符相反。

如果严格相等运算符要求类型AND值都相等才能解析为true ,那么严格不相等运算符要求类型或值都不同才能解析为true

将其描述为“相反”意味着类型和值需要有所不同才能重新定义为true

我们可以改写指令以反映严格不等式运算符的差异

从逻辑角度看,我认为!=====逻辑相反:
假设===可以写为Operand1 AND Operand2 ,则相反的是NOT(Operand1 AND Operand2) 。 可以写为NOT(Operand1) OR NOT(Operand2) ,与!== 。 但是,我可以看到说明中的歧义以及为什么会造成混淆。

我同意@dhcodes和@robbawebba。 当我写我的论据时,罗布做得更好。 唯一的例外是NaN ,它不等于它自己。
我正在编写Codepen来断言(双关语意)我的假设。 如果有人喜欢代码示例,这是我的烂摊子: http : 0012

我不反对改变它。 我只是不确定用什么重写就能做到这一点,而不会令露营者感到困惑。 感谢您的示例@systimotic。

信息已删除

不再贡献

我观察到很多朋友在这种逻辑上做错了。在大多数地方,人们说!==与===相反,因此他们认为!==的名称将是不等于值和等于类型。 as ===称为等值和等值类型。 同样在大多数情况下,学习者是初学者,所以我认为至少应该提到这个名字。 这只是我的建议。
http://www.w3schools.com/js/js_operators.asp

我可能喜欢添加“逻辑”一词的想法,如下所示:

严格不等式运算符(!==)与严格相等运算符在逻辑上相反。

然后,也许我们向上面的站点添加一个MDN链接?

是的,这是个好主意..... @ dhcodes

如果有人想继续学习,则需要在句子中添加单词logical

严格不等式运算符(!==)与严格相等运算符相反。

使它:

严格不等式运算符(!==)与严格等式运算符在逻辑上相反。

并修改MDN链接文件以添加对下面链接的引用,然后将MDN链接添加到质询:
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Operators/Comparison_Operators#Non -identity_strict_inequality_(!)

注意:MDN链接当前无法在暂存中使用,因此请使用MDN链接反映其他挑战的代码,因为目前无法在本地进行测试。

我想解决这个问题,不过可能在MDN链接方面需要一些帮助,但以前没有做过。

此页面是否有帮助?
0 / 5 - 0 等级