【发布时间】:2021-08-28 16:23:07
【问题描述】:
let input;
const todos = [];
while (input !== 'exit') {
input = prompt('Type what you want to do');
if (input === 'new') {
input = prompt("What's your todo?");
todos.push(input);
} else if (input === 'list') {
console.log(`This is your list of todos: ${todos}`);
} else if (input === 'delete') {
input = prompt('Which todo would you like to delete?');
if (todos.indexOf(input) !== -1) {
todos.splice(1, 1, input);
console.log(`You've deleted ${input}`);
}
} else {
break;
}
}
这就是我迄今为止所尝试的。 我开始编程,这是一个小练习的一部分,我必须从提示中要求添加新的待办事项,将其全部列出然后删除。 我要做的是:获取存储在输入变量中的输入,然后检查它是否在数组中,如果它是肯定的,我想删除它而不是从索引中删除它。
喜欢:
-删除 -吃 //检查它是否在数组内部 //如果为真,删除它
如果这是一个愚蠢的问题,我深表歉意。我在网上试了,没找到。
谢谢!
【问题讨论】:
-
欢迎来到 SO! splice 的工作原理并非如此。请查看文档:developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/…。这个想法是存储元素的索引并使用它来按索引拼接,而不是为拼接硬编码索引 1。 splice 的第三个参数是您要添加的可选数据,而不是要删除的数据(是的,这是一个奇怪的功能)。
标签: javascript arrays input splice