Tôi đã hoàn thành trò chơi cắt tỉa giấy rock của mình, và bây giờ tôi đang làm việc để thêm một số điểm vào nó. Vấn đề tôi gặp phải là tôi không thể có được chương trình để tăng điểm, nhưng thay vào đó nó đặt lại mỗi vòng. Tôi đã thử tạo hai biến, và sau đó thêm +1 vào chức năng của mình bất cứ khi nào một trong số chúng thắng nhưng tôi không thể tiết kiệm.
var userscore = 0;
var computerscore = 0;
function computerdecision[] {
var Number = Math.floor[Math.random[] * 3];
switch [Number] {
case 0:
return "rock";
case 1:
return "scissor";
case 2:
return "paper";
}
}
function declareWinner[userweapon, computerweapon] {
if [userweapon === computerweapon] {
console.log["Tiebreak"];
} else if [userweapon === "rock" && computerweapon === "scissor" ||
userweapon === "paper" && computerweapon === "rock" || userweapon === "scissor" && computerweapon ===
"paper"] {
console.log["User won"];
userscore++;
} else {
console.log["Computer won"];
computerscore++;
}
}
var userweapon = "rock"
var computerweapon = computerdecision[];
console.log['Your weapon is: ' + userweapon];
console.log["Computer's weapon is: " + computerweapon];
declareWinner[userweapon, computerweapon];
console.log["User: " + userscore]
console.log["computer: " + computerscore]
Cảm ơn trước.
adiga
33K8 Huy hiệu vàng56 Huy hiệu bạc80 Huy hiệu Đồng8 gold badges56 silver badges80 bronze badges
Được hỏi ngày 15 tháng 9 năm 2019 lúc 19:46Sep 15, 2019 at 19:46
4
Để phát một vòng khác, người dùng cần làm mới trang [như @emielzuurbier nhận xét], vì vậy trừ khi bạn sử dụng một số loại lưu dữ liệu - tất cả các bản ghi sẽ bị mất.
Một bản sửa lỗi nhanh sẽ là tạo một nút sẽ gọi lại chức năng. Nhưng điều này sẽ không lưu hồ sơ sau khi thoát / làm mới. Và tôi đoán đây không phải là những gì bạn đang tìm kiếm ...
Dù sao, tôi chỉnh sửa và viết lại mã của bạn để làm cho nó có thể phát + thêm một số bảng điểm lưu trữ cục bộ. Tôi để lại cho bạn phần thú vị để thay đổi các sự kiện title và tạo kiểu cho nó như bạn muốn.
var userscore = localStorage.getItem['userScore'];
document.querySelector["#userScore"].textContent = userscore;
var computerscore = localStorage.getItem['computerScore'];
document.querySelector["#computerScore"].textContent = computerscore;
function computerdecision[] {
var Number = Math.floor[Math.random[] * 3];
switch [Number] {
case 0:
return "rock";
case 1:
return "scissor";
case 2:
return "paper";
}
}
function declareWinner[] {
var computerweapon = computerdecision[];
var userweapon = document.querySelector['input[name="weapon"]:checked'].value;
if [userweapon === computerweapon] {
document.querySelector["#gameResult"].textContent = " Tiebreak ";
}
else if [userweapon === "rock" && computerweapon === "scissor" || userweapon === "paper" && computerweapon === "rock" || userweapon === "scissor" && computerweapon === "paper"] {
document.querySelector["#gameResult"].textContent = " User won ";
userscore++;
} else {
document.querySelector["#gameResult"].textContent = " Computer won ";
computerscore++;
}
document.querySelector["#userWeapon"].textContent = " User weapon was: " + userweapon;
document.querySelector["#computerWeapon"].textContent = " Computer's weapon was: " + computerweapon;
document.querySelector["#userScore"].textContent = userscore;
localStorage.setItem['userScore', userscore];
document.querySelector["#computerScore"].textContent = computerscore;
localStorage.setItem['computerScore', computerscore];
}
Rock
Paper
Scissor
Play
Game Result:
Computer:
Computer Weapon:
User:
User Weapon:
clear saved records
Hy vọng nó giúp! Nếu bạn có nhiều câu hỏi, hãy để lại một bình luận.
P.S - Bảng điểm sẽ không hoạt động ở đây trên Stack vì nó bị hạn chế, vì vậy bạn nên sao chép -dán và chạy nó trên máy của bạn.
Đã trả lời ngày 15 tháng 9 năm 2019 lúc 22:09Sep 15, 2019 at 22:09
A. Meshua. LướiA. Meshu
3.9102 Huy hiệu vàng20 Huy hiệu bạc34 Huy hiệu đồng2 gold badges20 silver badges34 bronze badges
1