gpt4 book ai didi

javascript - 结合javascript和html

转载 作者:行者123 更新时间:2023-11-30 08:52:44 24 4
gpt4 key购买 nike

设计并编写一个程序,提示用户输入他们的出生年份,计算用户的年龄并显示用户的年龄。如果用户的年龄超过 40 岁,则将网页的背景颜色设置为红色。该解决方案必须使用 JavaScript Date 对象并使用程序员创建的函数来计算用户的年龄。

非常小的问题,如果年龄超过 40 岁,我只需要让屏幕变红,我似乎无法做到这一点......

    <html>
<head>
<title> Age of person </title>
<div id="age"></div>
<body>
<script>
function determine_age_of_person ( year )
{
var today = new Date();
var now_year = today.getFullYear();
var age = now_year - year_person_was_born;
return age;
}


var year_person_was_born;
//unsure about below statement the '==' part
var age_of_person==age;

do
{
year_person_was_born = prompt("Enter year you were born", "");
year_person_was_born = parseInt (year_person_was_born1 );
}

while (is(year_person_was_born));

age_of_person = determine_age_of_person ( year_person_was_born );

if (age_of_person>40)
document.body.style.backgroundColor = "red";

else
document.body.style.backgroundColor = "white";

document.getElementById("age").innerHTML = "You are " + age_of_person + " years old";


</script>
</body>
</html>

最佳答案

好的,这里有很多代码放置问题(您在 body 元素之外有一个 html 元素,函数之外的返回语句,您不使用的函数参数)。这是您正在构建的内容的简化版本 ( demo )

<html>
<head>
<title> Age of person </title>
</head>
<body>
<div id="age"></div>
<script>
function determine_age_of_person (year) {
return (new Date()).getFullYear() - year;
}

var age_of_person = determine_age_of_person(parseInt (prompt("Enter year you were born", ""), 10));

if (age_of_person>40) {
document.body.style.backgroundColor = "red";
} else {
document.body.style.backgroundColor = "white";
}
document.getElementById("age").innerHTML = "You are " + age_of_person + " years old";
</script>
</body>
</html>

以下是我所做更改的明细:

  • 已搬家 <div id="age"></div>body里面
  • 使用参数 yeardetermine_age_of_person()而不是全局变量
  • 合并 prompt , parseIntdetermine_age_of_person成一行(并在 parseInt 中添加了一个基数,因为 JavaScript 有与非 10 进制数字相关的奇怪规则,这是一个好习惯)
  • if statement 添加花括号
  • 删除了无用的代码,如 do()while()

关于javascript - 结合javascript和html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16327205/

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