javascript - 在while条件中添加否定运算符的目的是什么?

标签 javascript

我可以使用检查来查明 yourName 变量是否为 false,而不是使用否定运算符来更改其类型。

let yourName;

do {
  yourName = prompt("Who are you?");
}
while (!yourName);

console.log(yourName);

结果是一样的

最佳答案

在过去 5 年的专业企业工作中,我从未见过 do..while 循环,仅仅是因为 while() 工作得很好,我理解在某些情况下,您需要至少 1 个循环,但在这些情况下,请查看如何触发此函数。我只能看到其中的一小部分,但我不建议使用它。

当应用否定运算符时,JavaScript 会与 ifwhile 一起度过一段有趣的时光。

关于这个主题有很多信息,通常我喜欢为 JavaScript 的新开发人员引用 MDN,因为 Mozilla 有很棒的教程 https://developer.mozilla.org/en-US/docs/Glossary/Truthy .

如果 yourName 的类型为 undefinednullfalse"" 没关系,但要小心,因为有时您想检查 0 值是否为 true。它将返回 false,因为它将 0 解释为 false,例如您想要检查值是否等于 0 if(0) 将返回 false。但是 if(yourName == 0)yourName 为 0,它将返回 true。

JavaScript 中的双重与三重相等比较也很有趣 https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness

在while条件中添加否定运算符的目的是什么

To make sure the value is not an empty string "", undefined, or null.

我可以使用检查来确定 yourName 变量是否为 false,而不是使用否定运算符来更改其类型

是的,您可以检查yourName是否为假,它会正常工作而无需否定,它只是一个快捷方式。

我不明白你所说的改变类型是什么意思?

关于javascript - 在while条件中添加否定运算符的目的是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58251101/

相关文章:

javascript - 电话间隙:FileTransferError.FILE_NOT_FOUND_ERR

javascript - Fabricjs 平移和缩放

javascript - 使用javascript在html中幻灯片放映..图像发生变化但无法正确显示

javascript - Http requests withCredentials 这是什么以及为什么要使用它?

javascript - 在 PhantomJS 和 Python 中伪造 Flash 插件信息

javascript - 而鼠标按下事件。原型(prototype) JS 或 Javascript

Javascript Loop 函数在启动良好后开始运行缓慢

javascript - 我的 Angular 代码有什么问题?

javascript - 使用 splice 从数组中删除项目

javascript - 如果字符串类似于 'price 0 €',则替换innerHTML