gpt4 book ai didi

javascript - 允许我设置天气类型的JS

转载 作者:行者123 更新时间:2023-11-28 00:42:06 26 4
gpt4 key购买 nike

我创建此代码时的目标是能够设置每种天气类型的独特特征,并能够通过生成随机数来随机设置一种天气类型。

我创建了 11 种不同的天气类型,使它们都成为 Weather 的对象。然后我制作了一个 getWeather 函数,它允许我获取随机天气类型,然后将其独特的特征(id、类型、healthChange、mileChange)保存到 Weather。但是,它似乎没有用。我相信错误是通过我的随机天气函数,我不认为我对获得随机数后该做什么有正确的想法。有人可以帮我吗?我也认为这比我有更多。我不确定 weather(veryHot) 是否正在做任何事情。我想让它做的是允许我随机选择天气,并获取它的变量,以便我可以操纵我的 HTML。

function Weather(id,type,healthChange,mileChange,probability) {
this.id = id;
this.type = type;
this.healthChange = healthChange;
this.mileChange = mileChange;
this.probability = probability;
}
veryHot = new Weather("1", "Very Hot","-9",".7",".1");
hot = new Weather("2", "Hot","-3",".9",".1");
warm = new Weather("3", "Warm","1","1",".2");
cool = new Weather("4", "Cool","1",".95",".1");
cold = new Weather("5", "Cold","-5",".8",".1");
veryCold = new Weather("6", "Very Cold","-12",".7",".1");
rain = new Weather("1", "Rain","-4",".6",".1");
heavyRain = new Weather("1", "Heavy Rain","-8",".4",".05");
snow = new Weather("1", "Snow","-15",".3",".05");
blizzard = new Weather("1", "Blizzard","-30",".1",".05");
heavyFog = new Weather("1", "Heavy Fog","-3",".5",".05");

function getWeather() {
var randomNumber = Math.floor(Math.random() * 100);

if(randomNumber <= 10 ) {
weather(veryHot);
}
if((randomNumber > 10) && (randomNumber <= 20)) {
weather(hot);
}
if((randomNumber > 20) && (randomNumber <= 40)) {
weather(warm);
}
if((randomNumber > 40) && (randomNumber <= 50)) {
weather(cool);
}
if((randomNumber > 50) && (randomNumber <= 60)) {
weather(cold);
}
if((randomNumber > 60) && (randomNumber <= 70)) {
weather(veryCold);
}
if((randomNumber > 70) && (randomNumber <= 80)) {
weather(rain);
}
if((randomNumber > 80) && (randomNumber <= 85)) {
weather(heavyRain);
}
if((randomNumber > 85) && (randomNumber <= 90)) {
weather(snow);
}
if((randomNumber > 90) && (randomNumber <= 95)) {
weather(blizzard);
}
if((randomNumber > 95) && (randomNumber <= 100)) {
weather(heavyFog);
}
}

最佳答案

将您的对象放入一个数组中,然后根据数组的长度生成一个随机数。如果您添加或删除天气对象,您现在不需要更改任何内容。

function Weather(id,type,healthChange,mileChange,probability) {
this.id = id;
this.type = type;
this.healthChange = healthChange;
this.mileChange = mileChange;
this.probability = probability;
}

var arrWeather = [new Weather("1", "Very Hot","-9",".7",".1"),
new Weather("2", "Hot","-3",".9",".1"),
new Weather("3", "Warm","1","1",".2"),
new Weather("4", "Cool","1",".95",".1"),
new Weather("5", "Cold","-5",".8",".1"),
new Weather("6", "Very Cold","-12",".7",".1"),
new Weather("1", "Rain","-4",".6",".1"),
new Weather("1", "Heavy Rain","-8",".4",".05"),
new Weather("1", "Snow","-15",".3",".05"),
new Weather("1", "Blizzard","-30",".1",".05"),
new Weather("1", "Heavy Fog","-3",".5",".05")];


function getRandomWeather() {
var randomNumber = Math.floor(Math.random() * arrWeather.length);
return arrWeather[randomNumber];
}

var weather = getRandomWeather();
console.log(weather);

//Lets populate the HTML
for (var property in weather) {
if (weather.hasOwnProperty(property)) {
document.querySelector("#weather ." + property).innerHTML = weather[property];
}
}
<div id="weather">
<h2 class="type"></h2>
<dl>
<dt>ID</dt>
<dd class="id"></dd>
<dt>Health Change</dt>
<dd class="healthChange"></dd>
<dt>Mile Change</dt>
<dd class="mileChange">
<dt>Probability</dt>
<dd class="probability"></dd>
</dl>
</div>

关于javascript - 允许我设置天气类型的JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52867353/

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