#javascript #arrays #function #date #array-filter
#javascript #массивы #функция #Дата #массив-фильтр
Вопрос:
var monthStartDate = new Date();
monthStartDate.setUTCDate(1);
var weekOneStartDate = JSON.stringify(monthStartDate.toJSON().substring(0, 10));
var monthEndDate = new Date(monthStartDate);
monthEndDate.setUTCMonth(monthEndDate.getUTCMonth() 1);
monthEndDate.setUTCDate(0);
var weekFiveEndDate = JSON.stringify(monthEndDate.toJSON().substring(0, 10));
document.write(weekOneStartDate)
document.write(weekFiveEndDate)
if(res.data.items.length > 0 )
{
var DateArray = res.data.items.filter(obj => obj.created_at >= weekOneStartDate
obj.created_at <= weekFiveEndDate)
console.log(DateArray.length);
}
- Я сохранил дату внутри переменной
- Теперь я объединяю внутри фильтра массива
obj => obj.created_at >= weekOneStartDate
- это не работает
- Как мы можем объединить внутри функции
Комментарии:
1. Вы можете использовать литералы шаблона:
filter(obj => `${obj.created_at}>=${weekOneStartDate${obj.created_at}<=${weekFiveEndDate}`)
2. Данные не фильтруются, отображаются все данные
3. Я не совсем понимаю, что вы хотите сделать. Не могли бы вы обновить свой вопрос тем, что вы ожидаете показать?
4. Вы не можете объединить
>=
итаким
filter
образом. Выполните фильтр, затем объедините.5. Я фильтрую данные массива на основе created_date, вместо использования дат я сохраняю диапазон дат в переменной. и я использую внутреннюю функцию. Теперь, как я могу объединить переменную с obj.created_at