JavaScript循环调用prompt存输入到数组仅触发一次问题求解
问题原因
- 你将
prompt调用写在了for循环外部,代码执行时只会在进入循环前调用1次prompt获取用户输入,后续循环过程中不会再触发弹窗,只是重复把第一次拿到的固定值ask推入数组。 - 循环条件设置为
num < 5,会执行5次循环,不符合你要求的限定循环4次的需求。
修复后的代码
const fruits = []; for(let num = 0; num < 4; num++){ const ask = prompt('Enter a fruit'); fruits.push(ask); } console.log(fruits);
修改说明
- 把
prompt调用移入循环体内部,每次循环都会触发一次弹窗获取新的用户输入 - 把循环终止条件从
num <5改为num <4,刚好执行4次循环,符合需求
内容的提问来源于stack exchange,提问作者Ja'afar Zakariya
相关产品推荐
相关产品推荐

