新手Javascript开发者求助:如何实现英里每小时(mph)计算器?
解决思路与代码实现
核心计算逻辑
mph(英里每小时)的本质是「每小时能跑的英里数」,所以关键是把分钟耗时转换成小时单位:
- 1小时 = 60分钟,因此分钟转小时的公式是
小时数 = 分钟数 / 60 - 速度公式推导为:
mph = 跑步英里数 ÷ 小时数,简化后可以写成mph = (英里数 × 60) / 分钟数
JavaScript 实现代码
// 获取用户输入的跑步距离(英里),转换为数字类型 const distance = Number(prompt("请输入跑步距离(单位:英里):")); // 获取用户输入的耗时(分钟),转换为数字类型 const timeMinutes = Number(prompt("请输入跑步耗时(单位:分钟):")); // 计算mph速度 const speedMph = (distance * 60) / timeMinutes; // 输出结果,保留两位小数让数据更直观 alert(`你的跑步速度是 ${speedMph.toFixed(2)} mph`);
代码细节说明
prompt():弹出输入框获取用户输入,返回值是字符串,必须用Number()转成数字才能参与计算toFixed(2):将计算结果保留两位小数,避免出现过长的小数(比如8.333333会变成8.33)- 若要处理无效输入(比如用户输入字母或0分钟),可以加简单判断:
if (!isNaN(distance) && !isNaN(timeMinutes) && timeMinutes > 0) { const speedMph = (distance * 60) / timeMinutes; alert(`你的跑步速度是 ${speedMph.toFixed(2)} mph`); } else { alert("请输入有效的数字,且耗时不能为0!"); }
内容的提问来源于stack exchange,提问作者anonymouscoder
相关产品推荐
相关产品推荐

