TIL 24日付に関する有用な関数📆


JavaScriptでは、Dateオブジェクトを使用して現在の日付と時刻を取得できます.Dateオブジェクトを使用して現在の日付を出力してもYYY-MM-DD形式では出力されないため、Dateオブジェクトが提供する抽出関数を使用して日付形式を変換する必要があります.
日付を表す様々な関数を知っています!

入力日(yyyyymmdd)が有効かどうかを確認します

function is_valid_date(date_str)
{
    let yyyyMMdd = String(date_str);
    let year = yyyyMMdd.substring(0,4);
    let month = yyyyMMdd.substring(4,6);
    let day = yyyyMMdd.substring(6,8);

    if (!is_number(date_str) || date_str.length!=8)
        return false;

    if (Number(month)>12 || Number(month)<1)
        return false;

    if (Number(last_day(date_str))<day)
        return false;

    return true;
}

yyyy-MM-dd日付文字列はDateを返します

function to_date2(date_str)
{
    let yyyyMMdd = String(date_str);
    let sYear = yyyyMMdd.substring(0,4);
    let sMonth = yyyyMMdd.substring(5,7);
    let sDate = yyyyMMdd.substring(8,10);

    return new Date(Number(sYear), Number(sMonth)-1, Number(sDate));
}

yyyyMMdd日付文字列はDateを返します

function to_date(date_str)
{
    let yyyyMMdd = String(date_str);
    let sYear = yyyyMMdd.substring(0,4);
    let sMonth = yyyyMMdd.substring(4,6);
    let sDate = yyyyMMdd.substring(6,8);

    return new Date(Number(sYear), Number(sMonth)-1, Number(sDate));
}

今日はMonthに戻ります。format: MM

function get_today_month()
{
    let today = new Date();
    return (today.getMonth()+1) > 9 ?  (today.getMonth()+1) : "0" + (today.getMonth()+1)
}

💡 実際の応用


これは왓차피디아にはない要素ですが、詳細ページポスターの横のスペースに、この映画の公開日が計画されています.
class MovieInfo extends Component {
  toDate = year => {
    let sYear = year.substring(0, 4);
    let sMonth = year.substring(5, 7);
    let sDate = year.substring(8, 10);
    //yyyy년 mm월 dd일로 반환
    return `${Number(sYear)}${Number(sMonth) - 1}${Number(sDate)}`;
  };
render(){
 return (
	<span>{release_date && this.toDate(release_date)}</span>
)}
実用画像

ソース📚


https://java119.tistory.com/76