Для добавления значений из поля ввода в массив объектов вида {text: inputValue}, можно использовать следующий подход:
1. Создайте переменную для хранения массива объектов:
```javascript
let objectsArray = [];
```
2. При каждом вызове функции debounce, получите значение из поля ввода, разделите его по символу ";" с помощью метода split, затем преобразуйте полученные строки в объекты и добавьте их в массив объектов:
```javascript
function debounce(func, delay) {
let timer;
return function() {
const inputValue = document.getElementById('input').value;
if(timer) {
clearTimeout(timer);
}
timer = setTimeout(() => {
const values = inputValue.split(';');
values.forEach(value => {
const trimmedValue = value.trim();
if(trimmedValue) {
objectsArray.push({ text: trimmedValue });
}
});
console.log(objectsArray); // вывод массива объектов в консоль
}, delay);
};
}
const debounceAction = debounce(() => {
// действие с задержкой
}, 300); // устанавливаем задержку в 300 миллисекунд
document.getElementById('input').addEventListener('input', debounceAction);
```
Теперь при каждом изменении значения в поле ввода и после заданной задержки, значения из поля будут добавляться в массив объектов в виде {text: inputValue}.