Как мне заставить мой симулятор денежных машин JavaScript работать в моем терминале Node.js? [закрыто]Javascript

Форум по Javascript
Ответить
Anonymous
 Как мне заставить мой симулятор денежных машин JavaScript работать в моем терминале Node.js? [закрыто]

Сообщение Anonymous »

В настоящее время я делаю симулятор денежных машин JavaScript Node.js, используя библиотеку «чтения-sync» для обработки ввода/вывода терминала. Это позволяет пользователю проверять свой баланс, депозит или снимать деньги. Я использовал цикл, чтобы поддерживать запуск приложения, пока пользователь не решит выйти. Я также включил обработку ошибок для недопустимых входов, например снятие большего, чем общий баланс. Однако, когда я запускаю приложение в моем коде VS, оно не работает. Кто-нибудь может помочь мне сделать мой код 'readline-sync' Friendly, пожалуйста?const cashMachine = require('readline-sync');

let name,
correct_pass = (/^[0-9]{4}£/),
passTry = 3,
currentBalance = 20000;

// Input a username
function cashMachineName() {
name = cashMachine.question("Enter your name");
if (name !== "" && name !== null) {
cashMachinePassword();
} else {
cashMachineName();
}
}
// Input a valid password
function cashMachinePassword() {
let passwordEntry = questionInt("Hello " + name + ", please enter your 4-digit PIN");
checkPassword(passwordEntry);
}
// Verify password meets requirements
function checkPassword(userInput) {
if (correct_pass.test(userInput)){
selectAccountType();
} else {
while (!(correct_pass.test(userInput))) {
if (passTry === 1) {
console.log("Incorrect PIN");
console.log("Maximum tries exceeded! Your account has been locked. Contact your bank for support.");
exit();
break;
} else {
passTry -= 1;
alert("Incorrect PIN. Please try again.");
alert("You have " + passTry + " chance/s to try");
cashMachinePassword();
}
}
}
}
// Select which account to use
function selectAccountType() {
let accountType = questionInt("Which type of account do you have? \n 1. Savings \n 2. Current \n 3. Credit");
if (accountType !== "" && accountType !== null && !isNan(accountType)) {
switch (accountType) {
case 1:
balance();
break;

case 2:
withdrawal();
break;

case 3:
deposit();
break;

case 4:
exit();
break;

default:
cashMachine.questionInt("Please make a valid operation");
selectFunction();
}
} else {
cashMachine.questionInt("Please make a valid selection");
selectFunction();
}
}
// Balance
function balance() {
cashMachine.questionInt("Your current balance is £" + currentBalance);
toContinue();
}
// Deposit
function deposit() {
let depositAmount = questionInt("How much do you want to deposit?");
if (depositAmount !== "" && depositAmount !== null && !isNaN(depositAmount)) {
currentBalance += depositAmount;
console.log("You have successfully deposited £" + depositAmount + "\n" + "You know have £" + currentBalance);
toContinue();
} else {
console.log("Error: Please enter a number!");
deposit();
}
}
// Withdrawal
function withdrawal() {
let withdrawalAmount = questionInt("How much do you want to withdraw? \n" + "The minimum amount you can withdraw is £5");
if (withdrawalAmount !== "" && withdrawalAmount !== null && !isNaN(withdrawalAmount)) {
if (withdrawalAmount >= 5) {
if (withdrawalAmount

Подробнее здесь: https://stackoverflow.com/questions/795 ... s-terminal
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Javascript»