var initialBalance = prompt("Initial balance:");
initialBalance = parseInt(initialBalance);
var choice = prompt("Deposit, Withdraw, Balance");
choice = choice.toUpperCase();
if (choice = D) {
var deposit = prompt("Deposit amount:");
alert(deposit + initialBalance);
}
我的代码允许用户输入信息,但似乎没有注册已输入的内容,因为它直接忽略了IF条件并转到空白页。不确定如何使我的if语句工作。
您正在使用分配操作员=
您应该使用抽象等效==
或严格的等价===
。D
应该在""
内部,因为它不是可变的。并使用+
if (choice === 'D') {
var deposit = +prompt("Deposit amount:");
alert(deposit + initialBalance);
}
简化的代码:
var initialBalance = +prompt("Initial balance:");
var choice = prompt("Deposit, Withdraw, Balance").toUpperCase();
if (choice === 'D') alert(+prompt("Deposit amount:") + initialBalance);
因为您没有名为 D
的变量 - 您想对 string "D"
进行检查。还使用==
(比较)操作员而不是=
(分配)操作员:
if (choice == "D") {...}
从字符串中将输入转换为 Number
,如果条件使D
成为字符串,并且还使用==
进行比较
if (choice=='D')
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Assignment 6</title>
</head>
<body>
<script>
var initialBalance = prompt("Initial balance:");
initialBalance = parseInt(initialBalance);
var choice = prompt("Deposit, Withdraw, Balance");
choice = choice.toUpperCase();
if (choice=='D') {
var deposit = prompt("Deposit amount:");
alert(+deposit +
+initialBalance);
}
</script>
</body>
</html>
您使用的分配运算符=
应该使用==
(抽象平等)或===
(严格的平等)。确保您在使用之前了解每个区域之间的区别。另外,似乎变量D位于您的代码中。