如果出现以下情况,是否可以使用多个输入提示终止Javascript函数;取消“;是否单击提示?
我有一个JavaScript函数来计算物理方程。该功能需要用户的输入。例如,如果函数需要3个输入,则会出现输入提示框,直到给出每个输入。当前,如果有3个连续的提示框,并且用户在第一个提示框上单击“取消”,则仍会弹出以下两个提示框,要求用户单击它们 我不知道从哪里开始。我曾想过实现一个if..else语句,但我说的是总共有近100个函数,每个函数至少有2或3个输入提示,而且每个函数都有一个if..else语句,似乎效率很低 我在Stack Overflow和其他网站上搜索过,但在我看来,没有什么是解决这个问题的合理步骤 如果有一个贴子正好解决了这个问题,请链接,让我提前道歉 代码一切正常,用户似乎会因为必须单击退出函数而感到恼火,特别是对于需要更多输入的函数 HTML代码如果出现以下情况,是否可以使用多个输入提示终止Javascript函数;取消“;是否单击提示?,javascript,html,Javascript,Html,我有一个JavaScript函数来计算物理方程。该功能需要用户的输入。例如,如果函数需要3个输入,则会出现输入提示框,直到给出每个输入。当前,如果有3个连续的提示框,并且用户在第一个提示框上单击“取消”,则仍会弹出以下两个提示框,要求用户单击它们 我不知道从哪里开始。我曾想过实现一个if..else语句,但我说的是总共有近100个函数,每个函数至少有2或3个输入提示,而且每个函数都有一个if..else语句,似乎效率很低 我在Stack Overflow和其他网站上搜索过,但在我看来,没有什么是
<p><button onclick="finalvelocity()">Final Velocity</button></p>
我希望有一个属性可以添加到HTML按钮中,如果按下“取消”按钮,该属性将终止函数调用
//JavaScript代码
函数最终位置(初始速度、加速度、时间)
{
var initialvelocity=prompt('请以米/秒为单位输入初始速度');
if(initialvelocity==null)返回;
var加速度=提示(“请输入加速度,单位为米/秒平方”);
如果(加速度==null)返回;
var time=prompt('请以秒为单位输入时间');
if(time==null)返回;
var finalvelocity=数量(初始速度)+(数量(加速度)*数量(时间));
警报(“最终速度为:'+最终速度+'米/秒”);
}
最终速度
编辑为与您的代码一起使用
//JavaScript代码
函数最终位置(初始速度、加速度、时间)
{
var initialvelocity=prompt('请以米/秒为单位输入初始速度');
if(initialvelocity==null)返回;
var加速度=提示(“请输入加速度,单位为米/秒平方”);
如果(加速度==null)返回;
var time=prompt('请以秒为单位输入时间');
if(time==null)返回;
var finalvelocity=数量(初始速度)+(数量(加速度)*数量(时间));
警报(“最终速度为:'+最终速度+'米/秒”);
}
Final Velocity
当按下cancel时,提示符
函数返回null
,因此您可以实际检查返回值是否为null
,然后使用return
语句终止函数。当按下cancel时,提示符
函数返回null
,因此,您可以实际检查返回值是否为null
,然后使用return
语句终止函数。如果您有100个输入,可能不使用prompt()
,但是,创建一个表单
函数calculateFinalVelocity(){
var initialvelocity=document.getElementById(“initialvelocity”).value;
var加速度=document.getElementById(“加速度”).value;
var time=document.getElementById(“time”).value;
var finalvelocity=数量(初始速度)+(数量(加速度)*数量(时间));
document.getElementById(“answer”).innerHTML='最终速度为:'+finalvelocity+'m/2';
}
初始速度(m/22)
加速度单位:m/22
以秒为单位的时间
计算最终速度
如果您有100个输入,可能不使用prompt()
,但是,制作一个表单
函数calculateFinalVelocity(){
var initialvelocity=document.getElementById(“initialvelocity”).value;
var加速度=document.getElementById(“加速度”).value;
var time=document.getElementById(“time”).value;
var finalvelocity=数量(初始速度)+(数量(加速度)*数量(时间));
document.getElementById(“answer”).innerHTML='最终速度为:'+finalvelocity+'m/2';
}
初始速度(m/22)
加速度单位:m/22
以秒为单位的时间
计算最终速度
我认为最有效的方法是将提示文本放入数组中,然后在其中循环
这是小提琴:
代码:
var promptArr=[
“请以米/秒为单位输入初始速度”,
“请输入加速度,单位为米/秒平方”,
“请以秒为单位输入时间”
];
var值=[];
for(var t=0;t
我认为最有效的方法是将提示文本放入数组中,然后循环遍历它
这是小提琴:
代码:
var promptArr=[
“请以米/秒为单位输入初始速度”,
“请输入加速度,单位为米/秒平方”,
“请以秒为单位输入时间”
];
var值=[];
for(var t=0;t
检查是否为空,然后重新设置
function finalvelocity(initialvelocity, acceleration, time)
{
var initialvelocity = prompt('Please enter the Initial Velocity in Meters per Second');
var acceleration = prompt('Please enter the Acceleration in Meters per Second Squared');
var time = prompt('Please enter the Time in Seconds');
var finalvelocity = Number(initialvelocity) + (Number(acceleration) * Number(time));
alert('The Final Velocity is found to be: ' + finalvelocity + 'Meters per Second');
}
var promptArr = [
"Please enter the Initial Velocity in Meters per Second",
"Please enter the Acceleration in Meters per Second Squared",
"Please enter the Time in Seconds"
];
var values = [];
for (var t = 0; t < promptArr.length; t++) {
var k = prompt(promptArr[t]);
if (k == null) {
break;
}
else {
values.push(k);
}
}
if (values.length === 3) {
var finalvelocity = Number(values[0]) + (Number(values[1]) * Number(values[2]));
alert(finalvelocity);
}