賞金將在 4 天后到期。此問題的答案有資格獲得 50聲望賞金。 cts正在從有信譽的來源尋找答案。
我有以下函式創建一個表并將日期和價格插入表中的行:
function createTable({ data, propertyId }) {
const table = createElement({
tag: 'table',
id: `p-${propertyId}`,
border: '1',
});
const tableHeader = createElement({
tag: 'caption',
innerText: 'Table title',
});
const tableBody = createElement({
tag: 'tbody',
});
//order dates so that most recent is displayed last
data
.sort((prev, current) => {
const prevDate = prev['date_created'].replace('/', '-').replace('/', '-');
const currentDate = current['date_created']
.replace('/', '-')
.replace('/', '-');
return new Date(prevDate) - new Date(currentDate);
})
.forEach((item) => {
const row = createElement({
tag: 'tr',
});
const date = createElement({
tag: 'td',
innerHTML: item.date_created,
});
const price = createElement({
tag: 'td',
innerHTML: item.price,
});
row.append(date, price);
tableBody.append(row);
});
table.append(tableHeader, tableBody);
return table;
}
日期格式目前是:YYYY/MM/DD,我希望它是 DD/MM/YYYY。我有以下函式可以按照我的意愿重新格式化日期,但我一直在努力在我的代碼中實作,因為我無法在innerHtml填充日期的位置呼叫該函式(item_date_created)。有人可以請教嗎?
function reformatDate(dateStr) {
var dArr = dateStr.split('-'); // ex input: "2010-01-18"
return dArr[2] '/' dArr[1] '/' dArr[0].substring(2); //ex output: "18/01/10"
}
例如,添加:
let reformattedDate = reformatDate(item.date_created);
下面 forEach 給出以下輸出:
undefined/undefined/22/11/06
uj5u.com熱心網友回復:
設法解決了這樣的問題:
.forEach((item) => {
let reformattedDate = reformatDate(item.date_created);
const row = createElement({
tag: 'tr',
});
const date = createElement({
tag: 'td',
innerHTML: reformattedDate,
});
const price = createElement({
tag: 'td',
innerHTML: item.price,
className: 'pp-price',
});
row.append(date, price);
tableBody.append(row);
});
function reformatDate(dateStr) {
const [year, month, day] = dateStr.split('/');
const result = [day, month, year].join('/');
return result;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/532286.html
上一篇:將下拉串列字串值轉換為日期
