JavaScript确认窗口

JavaScript确认窗口,javascript,confirm,Javascript,Confirm,我正在回顾JavaScript确认调用的一些代码。据我了解,请确认。与我一起工作的开发人员一直在执行以下操作: function askTheUser(question, myCallback) { var result = confirm(question); myCallback(result ? 2 : 1); } 让我做循环的那一行是结果?2:1。为什么有人会这样做,而不仅仅是myCallback(result) 是否有我不知道的与回调相关的事情。我只想返回与用户是否确认问题相

我正在回顾JavaScript确认调用的一些代码。据我了解,请确认。与我一起工作的开发人员一直在执行以下操作:

function askTheUser(question, myCallback) {
  var result = confirm(question);
  myCallback(result ? 2 : 1);
}
让我做循环的那一行是
结果?2:1
。为什么有人会这样做,而不仅仅是
myCallback(result)

是否有我不知道的与回调相关的事情。我只想返回与用户是否确认问题相关的真或假。我一直在看。只是看起来不正确


谢谢。

是的,你说得对。应该是(结果)。然后回调可以分配1、2或任何它想要的-如果真的有必要这样做的话!
它只是用参数调用回调,它没有什么特别的

它没有错,它只是将
true/false
转换成
2/1
。大概他们这样做是有原因的。

结果如何?2:1
表示如果
结果
为真,则返回2,否则返回1


他/她必须有特殊的理由这样做。尝试查找正在使用的代码。

我们无法告诉您为什么在没有更多上下文的情况下将
true/false
转换为
2/1
很重要。在这种情况下,当用户按OK时,它将返回
2
,否则它将返回
1
。向下的投票者,作为代码审查的一部分,我认为重要的是质疑任意数字的使用,并保持逻辑和简单。所以是的-使用原始布尔值+“应该是,不要使用任意数字”,但如果你想指出这一点,你能编辑一下,让你的答案更清楚“应该”是什么意思吗?你可以希望一个界面不是它本来的样子,但是你并不总是有权力去改变它。