Date.prototype.setMinutes()

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

setMinutes() 方法用於修改 Date 例項的分(minutes),該方法以本地時間為準。

試一試

const event = new Date("August 19, 1975 23:15:30");

event.setMinutes(45);

console.log(event.getMinutes());
// Expected output: 45

console.log(event);
// Expected output: "Tue Aug 19 1975 23:45:30 GMT+0200 (CEST)"
// Note: your timezone may vary

語法

js
setMinutes(minutesValue)
setMinutes(minutesValue, secondsValue)
setMinutes(minutesValue, secondsValue, msValue)

引數

minutesValue

一個介於 0 和 59 之間的整數,表示分鐘數。

secondsValue 可選

一個介於 0 和 59 之間的整數,表示秒數。如果指定了 secondsValue,則必須同時指定 minutesValue

msValue 可選

一個介於 0 和 999 之間的整數,表示毫秒數。如果指定了 msValue,則必須同時指定 minutesValuesecondsValue

返回值

該方法會直接修改 Date 物件,並返回其新的 時間戳。如果某個引數是 NaN(或被 強制轉換NaN 的值,如 undefined),則日期將設定為 無效日期,並返回 NaN

描述

如果未指定 secondsValuemsValue 引數,則會使用透過 getSeconds()getMilliseconds() 返回的值。

如果指定的引數超出了預期範圍,則會相應地更新其他引數以及 Date 物件中的日期資訊。例如,如果為 secondsValue 指定了 100,則分鐘數會增加 1(minutesValue + 1),秒數則為 40。

由於 setMinutes() 操作的是本地時間,因此跨越夏令時(DST)邊界可能會導致與預期不同的時間差。例如,當設定分鐘數時,如果跨越了春季前進(時鐘向前跳一小時)的轉換,新舊日期之間的時間戳差會比標稱時間差少一個小時。反之,如果跨越了秋季回撥(時鐘向後跳一小時)的轉換,則會額外增加一個小時。如果您需要透過固定時間量來調整日期,請考慮使用 setUTCMinutes()setTime()

如果新的本地時間落在偏移量轉換範圍內,則確切時間將使用與 Temporaldisambiguation: "compatible" 選項相同的行為來確定。也就是說,如果本地時間對應兩個瞬間,則選擇較早的那個;如果本地時間不存在(存在間隙),則向前推進間隙持續的時間。

示例

使用 setMinutes()

js
const theBigDay = new Date();
theBigDay.setMinutes(45);

規範

規範
ECMAScript® 2026 語言規範
# sec-date.prototype.setminutes

瀏覽器相容性

另見