计数器严重递增(Javascript)

计数器严重递增(Javascript),javascript,function,counter,Javascript,Function,Counter,我有一个计数器值,它并没有像它应该的那样被放大。调用每个newArea函数后,此计数器应递增。但是,从计数器=1上设置的默认值调用第一个函数后,计数器=2完成,但调用第二个函数后,计数器的值突然变为5 下面是源代码。提前感谢您的帮助 const home = document.querySelector("#home"); const nickName = document.querySelector(".nick-name"); const startBtn = document.queryS

我有一个计数器值,它并没有像它应该的那样被放大。调用每个newArea函数后,此计数器应递增。但是,从计数器=1上设置的默认值调用第一个函数后,计数器=2完成,但调用第二个函数后,计数器的值突然变为5

下面是源代码。提前感谢您的帮助

const home = document.querySelector("#home");
const nickName = document.querySelector(".nick-name");
const startBtn = document.querySelector(".startBtn");
const info = document.querySelector(".info");
let nickArea = document.querySelector(".nick-area");
let moneyArea = document.querySelector(".money-area");
const amountMoney = document.getElementById("amount-money");
const sendBtn = document.getElementById("send-money");
const infoWin = document.querySelector(".info-win");
const gameArea = document.getElementById("game-area");
const amoutWin = document.getElementById("amountwin");
let winArea = document.querySelector(".mywin");
const receive = document.getElementById("receive");
const area = document.querySelector(".area");
const endGameArea = document.getElementById("endgame");
const resetGame = document.getElementById("resetGame");
let currentFunds = 0;
let counter = 0;

//Investors
const InvestorNameArea = document.querySelector(".investor-name h2");
const InvestorPhotoArea = document.querySelector(".investor-image img");
const InvestorDealArea = document.querySelector(".investor-image p");
const Investors = [{name: "Bill Gates", photo: "img/investors/billgates.jpg", deal: "Lorem ipsum dolor sit amet consectetur adipisicing elit. Totam fuga quae asperiores nemo veritatis, cumque, nihil minus hic adipisci, ut dolor alias amet obcaecati. In ipsa tenetur laboriosam impedit. Consequatur!"}, {name: "Mark Zuckerberg", photo: "img/investors/markzuckerberg.jpg", deal: "Lorem ipsum dolor sit amet consectetur adipisicing elit. Totam fuga quae asperiores nemo veritatis, cumque, nihil minus hic adipisci, ut dolor alias amet obcaecati. In ipsa tenetur laboriosam impedit. Consequatur!"}, {name: "Google", photo: "img/investors/google.png", deal: "Lorem ipsum dolor sit amet consectetur adipisicing elit. Totam fuga quae asperiores nemo veritatis, cumque, nihil minus hic adipisci, ut dolor alias amet obcaecati. In ipsa tenetur laboriosam impedit. Consequatur!"}, {name: "Steve Jobs", photo: "img/investors/stevejobs.jpg", deal: "Lorem ipsum dolor sit amet consectetur adipisicing elit. Totam fuga quae asperiores nemo veritatis, cumque, nihil minus hic adipisci, ut dolor alias amet obcaecati. In ipsa tenetur laboriosam impedit. Consequatur!"}, {name: "Nokia", photo: "img/investors/nokia.jpg", deal: "Lorem ipsum dolor sit amet consectetur adipisicing elit. Totam fuga quae asperiores nemo veritatis, cumque, nihil minus hic adipisci, ut dolor alias amet obcaecati. In ipsa tenetur laboriosam impedit. Consequatur!"}];

    const endGame = (totalpayment,nick,currentFunds,payment) => {
    document.getElementById("totalearnings").innerHTML = `Total Earnings: ${totalpayment}$`;
    gameArea.style = "display: none";
    endGameArea.style = "display: inline-block";

    resetGame.addEventListener("click", function() {
        currentFunds = 0;
        payment = 0;
        counter = 0;
        newArea(nick, currentFunds, payment);
    })
}


        const newArea6 = (totalpayment, nick, currentFunds, payment) => {
            endGame(totalpayment, nick, currentFunds, payment);
        }


    const paymentMoney = (nick, currentFunds, payment) => {
    winArea.style = "display: none";
    let totalpayment = currentFunds + payment;
    moneyArea.innerHTML = `Your money: ${totalpayment}$`;
    if(totalpayment == 0) {
    endGame(totalpayment, nick, currentFunds, payment);
    }
    else {
       newArea(totalpayment, nick, currentFunds, payment);
    }

}

const sendMoney = (nick, currentFunds) => {
    infoWin.style = "display: none";
    if(amountMoney.value > currentFunds || amountMoney.value < 1) {
        infoWin.innerHTML = "You do not have that much money!";
        infoWin.style = "display: inline-block";
    }

    else {
        infoWin.style = "display: none";
        currentFunds = currentFunds - amountMoney.value;
        moneyArea.innerHTML = `Your money: ${currentFunds}$`;
        let rate = (Math.random() * (0 - 2) + 2).toFixed(1);
        let payment = Math.round(amountMoney.value * rate);
        amoutWin.innerHTML = `Investment: ${payment}$`;
        winArea.style = "display: inline-block";
        area.style = "display: none";
        receive.addEventListener("click", function() {
            paymentMoney(nick, currentFunds, payment, winArea);
        });
    }
}

const newArea = (nick) => {
    endGameArea.style = "display: none";
    endGameArea.style = "display: none";
    amountMoney.value = "";
    currentFunds = 100000;
    nickArea.innerHTML = `Your name: ${nick}`;
    moneyArea.innerHTML = `Your money: ${currentFunds}$`;
    InvestorNameArea.innerHTML = Investors[counter].name;
    InvestorPhotoArea.setAttribute("src", Investors[counter].photo);
    InvestorDealArea.innerHTML = Investors[counter].deal;
    winArea.style = "display: none";
    gameArea.style = "display: inline-block";
    area.style = "display: inline-block";
    sendBtn.addEventListener("click", function() {
        sendMoney(nick, currentFunds);
        counter++;
        console.log(counter);
    });
}

const startGame = () => {
    if(nickName.value.length < 1) {
        info.innerHTML = "You must write your name!";
        info.style = "opacity: 1";
    }

    else if(nickName.value.length > 15) {
        info.innerHTML = "Your name is too long!";
        info.style = "opacity: 1";
    }

    else {
        const nick = nickName.value;
        home.classList.add("hide");
        endGameArea.classList.add("hide");
        newArea(nick);
    }
}
startBtn.addEventListener("click", startGame);
const home=document.querySelector(“home”);
const昵称=document.querySelector(“.nick name”);
const startBtn=document.querySelector(“.startBtn”);
const info=document.querySelector(“.info”);
设nickArea=document.querySelector(“.nick区域”);
让moneyArea=document.querySelector(“.moneyArea”);
const amountMoney=document.getElementById(“金额钱”);
const sendBtn=document.getElementById(“汇款”);
const infoWin=document.querySelector(“.info win”);
const gameArea=document.getElementById(“游戏区域”);
const amoutWin=document.getElementById(“amountwin”);
让winArea=document.querySelector(“.mywin”);
const receive=document.getElementById(“接收”);
常量区域=document.querySelector(“.area”);
const endGameArea=document.getElementById(“endgame”);
const resetGame=document.getElementById(“resetGame”);
设流动资金=0;
设计数器=0;
//投资者
const InvestorNameArea=document.querySelector(“.investor name h2”);
const InvestorPhotoArea=document.querySelector(“.investor image img”);
const InvestorDealArea=document.querySelector(“.investor image p”);
const Investors=[{姓名:“比尔·盖茨”,照片:“img/Investors/billgates.jpg”,交易:“Lorem ipsum dolor sit amet Concertetur Adipising Elite.Totam fuga quae asperiores nemo Veriatis,cumque,nihil减去hic Adipisi,ut dolor别名amet obcaecati.在ipsa Teneur Labouriosam impedit.Consequature!”中,{姓名:“马克·扎克伯格”,照片:“img/investors/markzuckerberg.jpg”,交易:“Lorem ipsum dolor sit amet Concertetur Adipising Elite.Totam fuga quae asperiores nemo Veriatis,cumque,nihil减去hic Adipisi,ut dolor别名amet obcaecati.In ipsa Teneur laboriosam impedit.Consequature!”,{名称:“谷歌”,照片:“img/investors/Google.png”,交易:Lorem ipsum dolor坐在amet Concertetur Adipising Elite.Totam fuga quae asperiores nemo Veriatis,cumque,nihil减去hic Adipisi,但dolor化名amet obcaecati.在ipsa Teneur laboriosam impedit.Consequature!)中,{姓名:“Steve Jobs”,照片:“img/investors/stevejobs.jpg”,交易:Lorem ipsum dolor坐在amet Concertetur Adipising Elite.Totam fuga quae asperiores nemo Veriatis,cumque,nihil减去hic Adipisi,ut dolor化名amet obcaecati.在ipsa Teneur laboriosam impedit.Consequature!)中,{姓名:“诺基亚”,照片:“img/investors/Nokia.jpg”,交易:我的名字叫阿梅特·奥贝卡蒂。我的名字叫阿梅特·奥贝卡蒂。在我的名字里,我的工作就是阻止它;
const endGame=(totalpayment,nick,currentFunds,payment)=>{
document.getElementById(“totalearnings”).innerHTML=`总收益:${totalpayment}$`;
gameArea.style=“显示:无”;
endGameArea.style=“显示:内联块”;
resetGame.addEventListener(“单击”,函数(){
流动资金=0;
付款=0;
计数器=0;
newArea(尼克、流动资金、付款);
})
}
const NewArea 6=(总付款、尼克、流动资金、付款)=>{
终局(totalpayment、nick、流动资金、payment);
}
const paymentMoney=(尼克,流动资金,付款)=>{
winArea.style=“显示:无”;
总付款=流动资金+付款;
moneyArea.innerHTML=`您的钱:${totalpayment}$`;
如果(总付款==0){
终局(totalpayment、nick、流动资金、payment);
}
否则{
newArea(totalpayment、nick、流动资金、payment);
}
}
const sendMoney=(尼克,流动资金)=>{
infoWin.style=“显示:无”;
如果(amountMoney.value>currentFunds | | amountMoney.value<1){
infoWin.innerHTML=“你没有那么多钱!”;
infoWin.style=“显示:内联块”;
}
否则{
infoWin.style=“显示:无”;
流动资金=流动资金-金额money.value;
moneyArea.innerHTML=`您的钱:${currentFunds}$`;
让rate=(Math.random()*(0-2)+2.toFixed(1);
让付款=数学整数(amountMoney.value*费率);
amoutWin.innerHTML=`投资:${payment}$`;
winArea.style=“显示:内联块”;
area.style=“显示:无”;
receive.addEventListener(“单击”,函数(){
paymentMoney(尼克、流动资金、付款、winArea);
});
}
}
const newArea=(nick)=>{
endGameArea.style=“显示:无”;
endGameArea.style=“显示:无”;
amountMoney.value=“”;
流动资金=100000;
nickArea.innerHTML=`您的名字:${nick}`;
moneyArea.innerHTML=`您的钱:${currentFunds}$`;
InvestorNameArea.innerHTML=Investors[counter]。名称;
InvestorPhotoArea.setAttribute(“src”,投资者[柜台].photo);
InvestorDealArea.innerHTML=投资者[柜台].交易;
winArea.style=“显示:无”;
gameArea.style=“显示:内联块”;
area.style=“显示:内联块”;
sendBtn.addEventListener(“单击”,函数(){
sendMoney(nick,流动基金);
计数器++;
控制台日志(计数器);
});
}
常量startGame=()=>{
if(昵称.value.length<1){
info.innerHTML=“你必须写下你的名字!”;
info.style=“不透明度:1”;
}
else if(昵称.value.length>15){
info.innerHTML=“您的名字太长了!”;
info.style=“不透明度:1”;
}
否则{
const nick=昵称.value;
home.classList.add(“隐藏”);
endGameArea.classList.add(“hide”);
纽区(尼克);
}
}
startBtn.addEventListener(“单击”,startName);
sendBtn.addEventListener("click", function() {
    sendMoney(nick, currentFunds);
    counter++;
    console.log(counter);
});
const newArea = (nick) => {
    endGameArea.style = "display: none";
    endGameArea.style = "display: none";
    ...
    sendBtn.addEventListener("click", function() {
        ...
    });
}