gpt4 book ai didi

javascript - 当函数被另一个函数调用时,函数无法正常工作

转载 作者:行者123 更新时间:2023-12-03 03:15:36 24 4
gpt4 key购买 nike

这里是第一篇文章。我正在尝试为学校项目创建一个复活节计算器。当在浏览器控制台上自己调用函数 pasCalc(E) 时,它的工作效果非常好。但是,当我在 html form 中输入年份时,所有日期都已关闭。

抱歉,如果这听起来像是一个新手问题,但我不知道出了什么问题...任何帮助将不胜感激,感谢您的宝贵时间! :)

function start() {
document.getElementById("orthodox").innerHTML = "Ορθόδοξο πάσχα:";
//var E = document.getElementById("inputfield").value;
//console.log(E);
var pasxa = pasCalc(document.getElementById("inputfield").value)
console.log(pasxa);
//console.log(pasxa[0] + " " + pasxa[1]);

document.getElementById("orthodox").innerHTML += " " + pasxa;
}

function pasCalc(E) {
//var E = 2018;
var a = E % 19;
var T = (8 + 11 * a) % 30;
var month = "Mach";
var K = Math.floor((E / 100) - (E / 400) - 2);

var iPanArx = 21 + (53 - T) % 30;

if (iPanArx > 31) {
var iPanArxM = iPanArx - 31;
month = "April";
} else {
var iPanArxM = iPanArx;
}

var iPanTel = iPanArxM + K;
var Y = (E + Math.floor(E / 4) + iPanArx) % 7;
var iPas = iPanTel + (7 - Y);

if (iPas > 30 && month == "April") {
month = "May";
var iPas = iPas - 30;
} else if (iPas > 31 && month == "Marchυ") {
month = "April";
var iPas = iPas - 31;
}
console.log(iPas + " " + month + " " + E);
var arr = [];
arr.push(iPas);
arr.push(month);
return arr;
}
<div class="container align-center">
<h1>Easter Calculator</h1>
<input id="inputfield" type="text" placeholder="Enter a Year...">
<button class="btn btn-primary" onclick="start();">Submit</button>
<h5 id="orthodox">Orthodox Easter:</h5>
<h5>Catholic Easter:</h5>

</div>

最佳答案

默认情况下,表单字段是字符串。为了让 Javascript 知道它是一个整数,以便它可以处理数字计算(例如日期的年份部分),请将其包装在对 parseInt()

的调用中
var pasxa = pasCalc(parseInt(document.getElementById("inputfield").value))

关于javascript - 当函数被另一个函数调用时,函数无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46779420/

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