项目:
我正在开发一个node.js培训模块,并且其中一个小项目希望我执行以下操作:
说明:构建一个名为account.js的Node应用程序,该应用程序需要 用户通过命令行输入以注册交易。用户 必须能够输入:
- 总计-这应该计算出银行余额中的所有金额并将其显示给用户。
- 存款-这将使银行余额增加一个正数。不要向用户显示余额。
- 提款-这将使银行结余增加负数。不要向用户显示余额。
- lotto-90%的时间,这应从用户的余额中减去一个小帐户。另外10%的时间,这应该添加一个
大量的用户余额。每笔交易都应记录在.txt文件中。
提示:考虑制作一系列if-then或switch-case语句 识别交易类型和涉及的金额。
问题:
我无法获得txt文档中所有条目的总和。我使用以下代码将其存入:
function deposit() {
// We will add the value to the bank file.
fs.appendFileSync("bank.txt", amount);
}
此代码将允许我使用终端中的以下行将条目写入bank.txt文件:
node banking.js deposit 300
插入数字300、500、222后,当我打开txt文件时,数字看起来像300500222
现在,当我想查看总和时,我创建了总函数,如下所示:
function total() {
sum = 0;
for(let i=0; i < bankAccount.length; i++){
sum+=bankAccount[i];
}
console.log(sum);
}
我将在终端中运行以下行:
node banking.js total
我的输出将是:
0300500222
如果您注意到它会将所有内容像一个字符串一样加在一起,并在前面加一个0。
我做了什么:
我尝试了各种方法,这些方法在堆栈上或在线上都找不到很多。我尝试获取实际的文本文件内容并使用split(),然后加入以查看是否可以将其转换为数组,但我没有成功,它只是将每个单独的数字而不是整个数字分开了。我也尝试使用JSON.stringify,然后进行解析,然后尝试进行转换,但是我遇到了困难,并且无法正常工作。
我要的是什么
只需要一些指导,一旦获得初始存款并完全正确,我将如何完成这项工作。我可以自己完成项目的其他部分。
这是我到目前为止的完整代码:
var fs = require("fs");
var bankAccount = fs.readFileSync("bank.txt","UTF-8");
let inputString = process.argv;
let action = inputString[2];
let amount = inputString[3];
if(action == "deposit"){
deposit();
}else if(action == "withdraw"){
withdraw();
}else if(action == "total"){
total();
}else if(action == "lotto"){
lotto();
}else{
console.log("Please input whether it is a deposit, withdraw, total, or you wanna try the lotto?");
}
function total() {
sum = 0;
for(let i=0; i < bankAccount.length; i++){
sum+=bankAccount[i];
}
console.log(sum);
}
function deposit() {
fs.appendFileSync("bank.txt", amount);
}
答案 0 :(得分:1)
您需要使用定界符才能使事务分离。这是一个使用Competitor aCompetitor = new Competitor();
CompetitorInEvent event1 = new CompetitorInEvent(aCompetitor);
CompetitorInEvent event2 = new CompetitorInEvent(aCompetitor);
作为原始代码分隔符的示例:
space