У меня есть полная дата в моем массиве JSON, но в соответствии с моими потребностями мне нужна только дата, а не месяц и год, например, если полная дата - 2018-12-01, я хочу иметь только 01.
Поскольку это требование для меня, и я понятия не имею, как я могу объединить это
const raw = [
[
"JAYANAGAR",
"2018-09-01",
"476426"
],
[
"MALLESHWARAM",
"2018-09-01",
"92141"
],
[
"KOLAR",
"2018-09-01",
"115313"
],
[
"JAYANAGAR",
"2018-09-02",
"511153"
],
[
"MALLESHWARAM",
"2018-09-02",
"115704"
],
[
"KOLAR",
"2018-09-02",
"83597"
],
[
"JAYANAGAR",
"2018-09-03",
"167421"
],
[
"KOLAR",
"2018-09-03",
"53775"
]
]
let types = new Set();
const rawObj = raw.reduce((memo, [type, date, value]) => {
date = date.split('-').reverse().join('-');
memo[date] = memo[date] || {};
memo[date][type] = parseInt(value);
types.add(type);
return memo;
}, {});
types = [...types];
const data = Object.entries(rawObj).reduce((memo, [date, value]) => {
memo.push([date, ...types.map(type => value[type] || 0)]);
return memo;
}, [
['Billdate', ...types.map(type => `${type[0]}${type.substr(1).toLowerCase()}`)]
]);
console.info(data)здесь, в моем коде, я форматирую свои данные JSON, так как теперь мне нужно только дату, а не месяц и год.
Любой здесь умоляет меня направить или посоветовать мне, как я могу этого добиться
Пожалуйста, попробуйте задать вопрос с минимальным кодом.
Даже date.slice(-2) получит нужные данные
Возможный дубликат Извлечь дату и время из строки с помощью Javascript
Возможный дубликат Получить точный день из строки даты в Javascript



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Вы можете изменить строку даты на объект Date и использовать функцию getDate для получения части даты
var d = new Date('2018-09-03');
console.info(d.getDate())
привет, не могли бы вы помочь мне с этим постом stackoverflow.com/questions/55919420/…
Попробуйте добавить это:
new Date("2018-09-03").getDate();
Вы можете сначала преобразовать строку даты тура в Дата объекта, а затем использовать getDate() для получения даты. Это гарантирует поддержку различных форматов даты и времени.
var date = new Date('2018-09-01')
console.info(date.getDate());В соответствии с данными вашего массива raw, предполагая, что ваша дата всегда будет с индексом 1, вы можете попробовать это
const raw = [
[
"JAYANAGAR",
"2018-09-01",
"476426"
],
[
"MALLESHWARAM",
"2018-09-01",
"92141"
],
[
"KOLAR",
"2018-09-01",
"115313"
],
[
"JAYANAGAR",
"2018-09-02",
"511153"
],
[
"MALLESHWARAM",
"2018-09-02",
"115704"
],
[
"KOLAR",
"2018-09-02",
"83597"
],
[
"JAYANAGAR",
"2018-09-03",
"167421"
],
[
"KOLAR",
"2018-09-03",
"53775"
]
]
var dateList = raw.map(data => {
return new Date(data[1]).getDate();
})
console.info(dateList)эй, не могли бы вы помочь мне stackoverflow.com/questions/56521258/… Я застрял здесь долгое время, Если вы можете помочь мне с каким-то подходом, это будет очень полезно
var date = new Date('2019-01-02');
alert(date.getDate())
.getDate() - это функция, которая возвращает день из даты.
Если дата является строкой делать-
console.info(date.slice(-2));
Вы можете добиться этого с помощью небольшой магии регулярных выражений:
var regex = /^\d{4}-\d\d-(\d\d)$/;
var dates = []
for (let i = 0; i < raw.length; i++) {
var match = regex.exec(raw[i][1]);
dates.push(match[1])
}
Регулярное выражение соответствует строке дня (4 цифры "-" 2 цифры "-" 2 цифры) и фиксирует дату перед ее отправкой в массив.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions
Я скажу вам получить массив сырой в желаемой форме в самом первом операторе следующим образом.
Note: Then you move forward with you logic after that. Creating new dates using
new Date()statement doesn't make sense.
const raw = [
[
"JAYANAGAR",
"2018-09-01",
"476426"
],
[
"MALLESHWARAM",
"2018-09-01",
"92141"
],
[
"KOLAR",
"2018-09-01",
"115313"
],
[
"JAYANAGAR",
"2018-09-02",
"511153"
],
[
"MALLESHWARAM",
"2018-09-02",
"115704"
],
[
"KOLAR",
"2018-09-02",
"83597"
],
[
"JAYANAGAR",
"2018-09-03",
"167421"
],
[
"KOLAR",
"2018-09-03",
"53775"
]
].map((l) => { l[1] = l[1].split('-')[2]; return l})
console.info(raw)
/*
[ [ 'JAYANAGAR', '01', '476426' ],
[ 'MALLESHWARAM', '01', '92141' ],
[ 'KOLAR', '01', '115313' ],
[ 'JAYANAGAR', '02', '511153' ],
[ 'MALLESHWARAM', '02', '115704' ],
[ 'KOLAR', '02', '83597' ],
[ 'JAYANAGAR', '03', '167421' ],
[ 'KOLAR', '03', '53775' ] ]
*/
Попробуйте этот код
var weekday = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];
var d = new Date('08/11/2015');
alert(weekday[d.getDay()]);
Вы можете использовать moment.js, который прост в использовании:
<script src = "https://momentjs.com/downloads/moment.js"/>
var day = moment(new Date('2018-09-03')).format('DD');
вы пробовали
new Date(date).getDay();