JavaScript待办事项列表练习控制台输出异常问题求助
问题修复:待办列表控制台显示异常
我反复检查了很多次,但作为前端新手还是不断遗漏细节。控制台里我的待办列表没法像示例那样显示成带编号的条目,实际输出是直接打印${num} ${todos[num]}这样的字符串,而且循环还可能出问题。我觉得代码逻辑是对的,是不是有控制台相关的知识我没搞懂?
原代码:
let input = prompt("What would you like to do?"); const todos= ['list app finish', 'js practice']; while (input !== 'quit' && input !=="go away aysel"){ if(input === 'list') { console.log('***********') for (let num = 0; num< todos.length; i++){ console.log("${num} ${todos[num]}"); } console.log('*************') } input= prompt('What would you like to do') } console.log('Good bye')
错误原因及修复方案
你的问题和控制台无关,是代码里的两个语法错误导致的:
- 循环变量迭代错误:for循环初始化的变量是
num,但迭代时写的是i++,i未定义会引发错误,需改为num++。 - 模板字符串使用错误:ES6模板字符串必须用**反引号(
`)**包裹,双引号中的${}不会被解析,会直接输出原字符串,需把双引号改成反引号。
修复后的代码:
let input = prompt("What would you like to do?"); const todos= ['list app finish', 'js practice']; while (input !== 'quit' && input !=="go away aysel"){ if(input === 'list') { console.log('***********') for (let num = 0; num< todos.length; num++){ console.log(`${num} ${todos[num]}`); } console.log('*************') } input= prompt('What would you like to do') } console.log('Good bye')
内容的提问来源于stack exchange,提问作者hartimX
相关产品推荐
相关产品推荐

