首页 > 解决方案 > 为什么我的变量没有在 if...else 语句中正确定义?

问题描述

在下面的代码中,我定义了一个名为 checkPassword() 的函数,它接受一个参数 passwordCorrect,它可以为真或假。

我还定义了两个变量,accessGranted 和 message,它们当前没有值(它们未定义),如果你写得正确,它们将被你的 if 语句覆盖和定义。

我需要在函数中编写一个 if 语句来更新两个变量 accessGranted(一个布尔值)和 message(一个字符串),以满足以下要求

要求: 1) 如果 passwordCorrect 为 true,accessGranted 的值应为 true,message 的值应为“欢迎来到管理面板!” 2) 在任何其他情况下,accessGranted 的值应为 false,而 message 的值应为“密码错误”。

var accessGranted;
var message;

function checkPassword(passwordCorrect) {
  if passwordCorrect == true {
    accessGranted = true;
    message = "Welcome to the admin panel!";
  }

  else {
    accessGranted = false;
    message = "Wrong password."

  }

}

console.log('Access Granted:', accessGranted);
console.log('Message:', message);

标签: javascriptvariablesif-statement

解决方案


您需要调用该函数并修复您的语法错误。if 语句在 javascript 中需要括号。

let accessGranted;
let message;

function checkPassword(passwordCorrect) {
  if (passwordCorrect) {
    accessGranted = true;
    message = "Welcome to the admin panel!";
  }

  else {
    accessGranted = false;
    message = "Wrong password."

  }

}

checkPassword(true)

console.log('Access Granted:', accessGranted);
console.log('Message:', message);

推荐阅读