You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript如何让prompt()调用函数并传入用户输入作为参数

可行实现方案

你现在的代码写死了传入25作为参数调用函数,自然没法实现动态交互,改两个地方就行:

  • 删掉硬编码的lifeInWeeks(25)调用
  • 加上prompt获取用户输入的逻辑,注意把输入值转成数字类型(prompt默认返回字符串,直接算会出问题),顺便补个基础的输入合法性判断,避免用户输非数字、点取消的时候报错。

完整可运行代码如下:

function lifeInWeeks(age) {
    var days = (90 - age) * 365;
    var weeks = (90 - age) * 52;
    var months = (90 - age) * 12;
    alert("You have " + days + " days, " + weeks + " weeks, and " + months + " months left.");
}

// 页面加载自动弹出输入框获取年龄
const userAgeInput = prompt("请输入你的当前年龄:");
// 校验输入有效性:未点取消、输入为有效数字、不是空内容
if (userAgeInput !== null && !isNaN(Number(userAgeInput)) && userAgeInput.trim() !== "") {
    lifeInWeeks(Number(userAgeInput));
} else {
    alert("输入无效,请刷新页面后输入正确的年龄数字");
}

运行效果说明

  • 打开页面就会自动弹出年龄输入弹窗,不需要手动打开控制台调用任何函数
  • 输入合法年龄数字(比如25)确认后,会直接弹出计算好的剩余天数、周数、月数提示
  • 如果用户点击取消、输入非数字内容或者空内容,会弹出无效输入提示,不会出现计算错误

内容的提问来源于stack exchange,提问作者Victor Anderson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.27 23:12:17