回到课程

使用 '?' 或者 '||' 重写函数

重要程度: 4

如果参数 age 大于 18,那么下面的函数返回 true

否则它将会要求进行确认,并返回确认结果:

function checkAge(age) {
  if (age > 18) {
    return true;
  } else {
    return confirm('Do you have your parents permission to access this page?');
  }
}

重写这个函数并保证效果相同,不使用 if,且只需一行代码。

编写 checkAge 的两个变体:

  1. 使用问号运算符 ?
  2. 使用或运算符 ||

使用问号运算符 '?'

function checkAge(age) {
  return (age > 18) ? true : confirm('Did parents allow you?');
}

使用或运算符 ||(最短的变体):

function checkAge(age) {
  return (age > 18) || confirm('Did parents allow you?');
}

请注意此处不需要 age > 18 左右的括号。写上括号是为了提高可读性。