CodeGym /Java Adesua /Frontend SELF TW /Date. 日期和數字的格式化

Date. 日期和數字的格式化

Frontend SELF TW
等級 37 , 課堂 1
開放

2.1 Date 物件

處理日期和數字是開發網頁應用程式的重要部分。JavaScript 提供內建物件和方法來操作日期和數字。在這節課,我們會看看 Date 物件,它的方法和格式化日期和數字的方法。

JavaScript 中的 Date 物件表達日期和時間。它有許多方法來處理日期,包括獲取當前日期和時間、設置日期和時間以及格式化。

創建 Date 物件

重要!
如果你創建一個沒有參數的 Date() 物件,它將會包含當前的日期和時間—它被創建的那一刻的。

創建 Date 物件有多種方式。

1. 當前日期和時間:

JavaScript
    
      const now = new Date();

      console.log(now); // 顯示當前日期和時間
    
  

2. 設定特定的日期和時間:

JavaScript
    
      const specificDate = new Date('2024-07-07T10:00:00');

      console.log(specificDate); // 顯示2024年7月7日
    
  

3. 使用數字值設定日期和時間:

JavaScript
    
      const anotherDate = new Date(2024, 6, 7, 10, 0, 0);

      console.log(anotherDate); // 顯示2024年7月7日
    
  

2.2 Date() 物件的方法

獲取日期的組件:

  • getFullYear(): 獲取年(四位數字)
  • getMonth(): 獲取月(從0到11)
  • getDate(): 獲取月份中的日(從1到31)
  • getHours(): 獲取小時(從0到23)
  • getMinutes(): 獲取分鐘(從0到59)
  • getSeconds(): 獲取秒(從0到59)

例子:

JavaScript
    
      const now = new Date();

      console.log(now.getFullYear()); // 當前年份
      console.log(now.getMonth()); // 當前月份 (-1)
      console.log(now.getDate()); // 當前的日
      console.log(now.getHours()); // 當前小時
      console.log(now.getMinutes()); // 當前分鐘
      console.log(now.getSeconds()); // 當前秒
    
  

設置日期的組件:

  • setFullYear(year): 設置年
  • setMonth(month): 設置月
  • setDate(day): 設置月份中的日
  • setHours(hours): 設置小時
  • setMinutes(minutes): 設置分鐘
  • setSeconds(seconds): 設置秒

例子:

JavaScript
    
      const date = new Date();

      date.setFullYear(2025);
      date.setMonth(0); // 一月
      date.setDate(15);
      date.setHours(12);
      date.setMinutes(30);
      date.setSeconds(45);

      console.log(date.toString());
    
  

2.3 日期的格式化

JavaScript 提供方法將日期格式化成字符串。最流行的方法是 toLocaleDateString() 根據地區格式化日期。

使用 toLocaleDateString() 的例子:

JavaScript
    
      const now = new Date();

      console.log(now.toLocaleDateString('en-US')); // "7/7/2024" (MM/DD/YYYY)
      console.log(now.toLocaleDateString('en-GB')); // "07/07/2024" (DD/MM/YYYY)
      console.log(now.toLocaleDateString('ru-RU')); // "07.07.2024" (DD.MM.YYYY)
    
  

方法 toLocaleTimeString()

方法 toLocaleTimeString() 返回格式化的本地時間作為字符串:

JavaScript
    
const now = new Date();

console.log(now.toLocaleTimeString('en-CA')); 
console.log(now.toLocaleTimeString('en-GB')); 
    
  

方法 toLocaleString()

方法 toLocaleString() 返回格式化的本地日期和時間作為字符串:

JavaScript
    
      const now = new Date();

      console.log(now.toLocaleString('en-CA')); 
      console.log(now.toLocaleString('en-GB')); 
    
  

方法 toISOString()

方法 toISOString() 返回 ISO 8601 格式的日期和時間:

JavaScript
    
      const now = new Date();

      console.log(now.toISOString()); // "2023-07-05T10:00:00.000Z"
    
  

2.4 數字的格式化

方法 toLocaleString()

方法 toLocaleString() 允許根據本地設置格式化數字:

JavaScript
    
      const number = 1234567.89;

      console.log(number.toLocaleString()); // "1,234,567.89" 在美國格式或 "1 234 567,89" 在本地格式
      console.log(number.toLocaleString('de-DE')); // "1.234.567,89" 在德國格式
    
  

使用 Intl.NumberFormat 格式化數字

構造函數 Intl.NumberFormat 提供更加靈活的數字格式化選項:

JavaScript
    
      const number = 1234567.89;

      const usFormatter = new Intl.NumberFormat('en-US');
      console.log(usFormatter.format(number)); // "1,234,567.89"

      const deFormatter = new Intl.NumberFormat('de-DE');
      console.log(deFormatter.format(number)); // "1.234.567,89"

      const customFormatter = new Intl.NumberFormat('en-US', {
        style: 'currency',
        currency: 'USD'
      });

      console.log(customFormatter.format(number)); // "$1,234,567.89"
    
  
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION