Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.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 为什么函数返回布尔值?_Javascript_Function_Return - Fatal编程技术网

Javascript 为什么函数返回布尔值?

Javascript 为什么函数返回布尔值?,javascript,function,return,Javascript,Function,Return,我正在编写自己的函数,它返回两个参数之间的较低参数 我的第一个解决方案是: function min(a, b) { if (a < b) return a; else return b; } console.log(min(0, 10)); // → 0 功能最小值(a、b){ if(a

我正在编写自己的函数,它返回两个参数之间的较低参数

我的第一个解决方案是:

function min(a, b) {
  if (a < b)
    return a;
  else
    return b;
}

console.log(min(0, 10));
// → 0
功能最小值(a、b){
if(a
但我想简化它,并编写了另一个函数:

function min(a, b) {
   return a ? a < b : b;
}
console.log(min(0, 10));
// → true
功能最小值(a、b){
返回a?a
为什么我的第二个函数返回布尔值而不是数字?我能改变这种行为吗

应该是

function min(a, b) {
   return a < b ? a : b;
}
console.log(min(0, 10));
功能最小值(a、b){
返回a
应该是

function min(a, b) {
   return a < b ? a : b;
}
console.log(min(0, 10));
功能最小值(a、b){
返回a
您的三元运算符有点古怪

它应该是
布尔值?returnValueForTrue:returnValueForFalse

那么你是在做
a?布尔值:b
,我不确定这会变成什么<代码>a?布尔值
将变为布尔值

所以你的应该是

function min(a, b) {
   return a < b ? a : b;
}
console.log(min(0, 10));

返回a

您的三元运算符有点古怪

它应该是
布尔值?returnValueForTrue:returnValueForFalse

那么你是在做
a?布尔值:b
,我不确定这会变成什么<代码>a?布尔值
将变为布尔值

所以你的应该是

function min(a, b) {
   return a < b ? a : b;
}
console.log(min(0, 10));

返回a

a?a
这个表达式是什么意思?
我可以改变这个行为吗?
-你需要改变的是你对
情况的理解?whentruthy:whenfalsey
有效:如果a为0,那么它是错误的,所以
a?a
应该返回b(即10),不是真的。@zerkms完全正确。我没有注意。Thanks@JaromandaX谢谢。
a?a
这个表达式是什么意思?
我可以改变这个行为吗?
-你需要改变的是你对
情况的理解?whentruthy:whenfalsey
有效:如果a为0,那么它是错误的,所以
a?a
应该返回b(即10),不是真的。@zerkms完全正确。我没有注意。Thanks@JaromandaX谢谢