如何用Luxon格式化日期?

问题描述

使用moment.js,您可以通过以下方式设置日期格式:

for sheet_name,df in Input_Data.items():
    for line in sheet_name:
        if line.startswith('Linear'):
            index = line.index('Linear')
            break
    df1 = df[index+1:236]
    df1.loc[:,'Unnamed: 26']*=-1  
    df1.loc[:,'Unnamed: 27']*=-1
    df=df1.sort_index(ascending=False)
    Indexer=df.columns.tolist()
    df = [(pd.concat([df[Indexer[0]],df[Indexer[num]]],axis=1)) for num in [1,2,3,4,5,6]]#concatenation
    df = [(df[num].astype(str).agg(','.join,axis=1)) for num in [0,1,5]]
    df=pd.DataFrame(df)
    df=df.loc[0].append(df.loc[1].append(df.loc[2].append(df.loc[3].append(df.loc[4].append(df.loc[5])))))
const date = moment("2010-10-22T21:38:00");
const data = date.format("LL - LT") 
console.log(data)

如何对Luxon做同样的事情?我尝试过:

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.29.0/moment.min.js" integrity="sha512-Izh34nqeeR7/nwthfeE0SI3c8uhFSnqxV0sI9TvTcXiFJkMd6fB644O64BRq2P/LA/+7eRvCw4GmLsXksyTHBg==" crossorigin="anonymous"></script>
const date = luxon.DateTime.fromISO("2010-10-22T21:38:00" );
const data = luxon.DateTime.fromFormat(date,"DATETIME_SHORT")
// output => script error

解决方法

const date = DateTime.fromISO("2010-10-22T21:38:00")
const humanReadable = date.toLocaleString(DateTime.DATETIME_MED);

console.log(humanReadable); // =>  October 22,9:38 PM

来源:https://moment.github.io/luxon/docs/manual/formatting.html

您可以在此处详细了解可能的格式:https://moment.github.io/luxon/docs/manual/formatting.html#the-basics