Привет, я новичок в изучении javascript. Можете ли вы, ребята, помочь мне.. Вот подробности:
У меня есть массивы:
let todos = [
{id: 1, todo: "learning javascript"},
{id: 2, todo: "sleeping"},
{id: 3, todo: "playing"},
];
Все, что мне нужно сделать, это удалить объект массива, который имеет номер id:2 по его id (точно id/номер), который является "номером" значения объекта. НЕ по индексу. Я хочу сделать функцию CRUD. Но у функции есть только один параметр: ID:
.DeleteByID(id) ---> by its number id, not by index.
Итак, результат будет таким:
let todos = [
{id: 1, todo: "learning javascript"},
{id: 3, todo: "playing"},
];
Я уже пробовал код ниже..
function deleteByID(id) {
for(var i in todos){
if(todos[i].id == id){
todos[i].splice(i, id);
break;
}
}
}
console.log("Delete:", deleteByID(2));
Я попробовал свой код, но он не работает. Я пытался гуглить, но у меня до сих пор нет подсказки для решения. Пожалуйста, помогите мне, ребята. Спасибо
"это не работает"... что он делает вместо того, чтобы работать?
вам понадобится элемент
return todos.splice(i, 1);
... вsplice
1
вtodos
в позицииi
и вернуть объединенную записьмой код неверен. У меня нет никакой подсказки, которая соответствует логике javascript.
да, ваш код неверен ... вы заметили ошибку, которую он выдает в консоли? это было бы полезной информацией ... в любом случае, см. предыдущий комментарий для решения
я хочу стереть один из объектов строки с идентификатором номер 2. Это именно то, что я хочу для своего кода.
вы заметили сообщение об ошибке в консоли, которое выдает ваш код?
хорошо, я попробую
вы заметили сообщение об ошибке в консоли, которое выдает ваш код? Я продолжаю говорить это, потому что это отладка 101 ... проверьте наличие ошибок в консоли инструментов разработчика
когда я пробую следующий код: let todos = [ {id: 1, todo: "изучаем javascript"}, {id: 2, todo: "спим"}, {id: 3, todo: "играем"}, ]; function deleteByID(id) { for(var i in todos){ if(todos[i].id == id){ return todos.splice(i, id); } } вернуть задачи; } console.log("Удалить:", deleteByID(2)); массив идет на стирание объекта с идентификатором 1, а не с идентификатором 2. Удалить: (2)[ { id: 2 todo: sleep } { id: 3 todo: play } ]
вы не читали ответ, который я разместил 3 комментария назад? вы хотите соединить элемент ONE из массива, а не элементы "id"