ReferenceError:提示未定义。我将如何在 JavaScript 中解决这个问题?

新手上路,请多包涵

我正在使用 JavaScript 创建的这家餐厅中创建不同的餐点菜单。当我遇到这个 ReferenceError 说提示未定义时,我正在添加代码的前几行。如果您需要查看完整的上下文,您可以在此处参考原始代码 https://repl.it/@qwerty__________/Welcome-to-the-Drivethrough 和我正在处理的代码在这里 https://repl.it/@ qwerty________/DullFreeMisrac 。官方错误就在这里。

 ReferenceError: prompt is not defined
at evalmachine.<anonymous>:2:12
at Script.runInContext (vm.js:74:29)
at Object.runInContext (vm.js:182:6)
at evaluate (/run_dir/repl.js:133:14)
at ReadStream.<anonymous> (/run_dir/repl.js:116:5)
at ReadStream.emit (events.js:180:13)
at addChunk (_stream_readable.js:274:12)
at readableAddChunk (_stream_readable.js:261:11)
at ReadStream.Readable.push (_stream_readable.js:218:10)
at fs.read (fs.js:2124:12)

这是在 JavaScript 上。我已经尝试将其更改为 window.prompt 而不是提示,它说窗口未定义。

 	var nam = prompt("Hi, Welcome to the Drivethrough!! What is your name?")
	var mprice = 4
	var bprice = 8
	var cprice = 6
	var fprice = 2
	var oprice = 3
	var fmprice = 5
	var gprice = 0
	var price = 0
	var fcmprice = 10
	var cmprice = 4
	var kkkprice = 9
	var dddprice = 10
	var mmmprice = 12
	var icprice = 6
	var resprice = 999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999
	var superprice = 1

我原以为它会弹出一个弹出框询问我的名字,然后我选择早餐菜单来测试巧克力牛奶,但它却弹出错误代码,告诉我提示未定义。

非常感谢您查看我的问题。 :)

原文由 anz621 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 968
2 个回答

您似乎在提供此环境的站点中的 Node.js 环境中运行此代码。 window 在此环境中未定义对象。您可以尝试在浏览器控制台或 HTML 文件中测试您的脚本。

原文由 vsemozhebuty 发布,翻译遵循 CC BY-SA 4.0 许可协议

prompt() 是在浏览器中找到的全局 window 对象的一种方法。它不是 JavaScript 语言的一部分。如果您不在浏览器或支持 浏览器对象模型 的环境中运行代码, window 将不存在,如果 window 不存在,也不会 prompt() 是。在浏览器中运行您的代码。

原文由 Scott Marcus 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题