gpt4 book ai didi

Javascript 变量未定义 - 本地问题?

转载 作者:行者123 更新时间:2023-11-28 03:54:18 24 4
gpt4 key购买 nike

<分区>

HTML代码:

<!DOCTYPE html>
<html lang="en">
<head>
<title>CCG Sim</title>
<link rel="stylesheet" type="text/css" href="main.css">
<script src="C:\Users\Tyler\Desktop\jquery-3.1.1.js"></script>
<script src="C:\Users\Tyler\Desktop\main.js"></script>
</head>
<body>
<form method="post">
Enter Decklist:<br>
<textarea id="txtar_decklist" cols="1" rows="100"></textarea><br><br>
<input type="submit" value="Create Deck" onclick="CreateDeck()">
</form>
<button type="button" onclick="DrawCard()">Draw Card</button>
</body>
</html>

JavaScript 代码:

var decklist = [];

function CreateDeck(){
var deckform = document.getElementById("txtar_decklist").value.split('\n');
var stats = [];
for (var n = 0; n < deckform.length; n++){
if (deckform[n] != ""){
stats = deckform[n].split(',');
for (var x = 0; x < parseInt(stats[0],10); x++){
decklist.push({Name: stats[1],
Color: stats[2],
Type: stats[3],
Subtype: stats[4],
Level: stats[5],
Attack: stats[6],
Defense: stats[7],
Drawn: false});
}
}
}
};

function DrawCard(){
var randomcard = 0;
var carddrawn = false;
while (carddrawn == false){
randomcard = (Math.floor(Math.random() * decklist.length + 1)) - 1;
if (decklist[randomcard].Drawn == false){
alert(JSON.stringify(decklist[randomcard]));
decklist[randomcard].Drawn = true;
carddrawn = true;
}
}
};

问题:

变量 Decklist 在每个函数中都未定义。当然,第一个函数可以为 Decklist 创建一个对象数组,但它的值不会在以后继续存在以供第二个函数使用(它只是在第二个中未定义)。

基本上,用户会在表单中插入一个列表,CreateDeck() 函数(理想情况下)会根据提供的列表创建一个对象数组。之后,只要用户需要,他或她就可以单击调用 DrawCard() 的 Draw Card 按钮。第二个函数无法访问 Decklist 的值,因为它在 this 内部是未定义的。

我没有得到什么?有什么建议吗?

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com