12345678910111213141516171819202122232425262728293031323334353637 |
- import{_ as i,c as a,a2 as n,o as k}from"./chunks/framework.Ct9Y1XYN.js";const o=JSON.parse('{"title":"工作日","description":"","frontmatter":{},"headers":[],"relativePath":"guide/working-days.md","filePath":"zh/guide/working-days.md"}'),t={name:"guide/working-days.md"};function l(h,s,p,e,d,r){return k(),a("div",null,s[0]||(s[0]=[n(`<h1 id="工作日" tabindex="-1">工作日 <a class="header-anchor" href="#工作日" aria-label="Permalink to "工作日""></a></h1><h2 id="isworkday-检查某个日期是否为工作日" tabindex="-1"><code>isWorkday</code> 检查某个日期是否为工作日 <a class="header-anchor" href="#isworkday-检查某个日期是否为工作日" aria-label="Permalink to "\`isWorkday\` 检查某个日期是否为工作日""></a></h2><div class="language-js vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">js</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">isWorkday</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'2023-01-01'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)); </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// false</span></span></code></pre></div><h2 id="getworkdaysinrange-取指定日期范围内的工作日列表" tabindex="-1"><code>getWorkdaysInRange</code> 取指定日期范围内的工作日列表 <a class="header-anchor" href="#getworkdaysinrange-取指定日期范围内的工作日列表" aria-label="Permalink to "\`getWorkdaysInRange\` 取指定日期范围内的工作日列表""></a></h2><p>接收起始日期和结束日期,并可选地决定是否包括周末。如果包括周末,则函数会返回包括周末在内的所有工作日;否则,只返回周一到周五的工作日。</p><div class="language-js vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">js</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 示例用法</span></span>
- <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> start</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> '2024-04-26'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">;</span></span>
- <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> end</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;"> '2024-05-06'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">;</span></span>
- <span class="line"></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 获取从 2024-05-01 到 2024-05-10 的所有工作日,包括周末</span></span>
- <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> workdaysIncludingWeekends</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> getWorkdaysInRange</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(start, end, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">true</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">);</span></span>
- <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Workdays including weekends:'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, workdaysIncludingWeekends);</span></span>
- <span class="line"></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 获取从 2024-05-01 到 2024-05-10 的工作日,不包括周末</span></span>
- <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> workdaysExcludingWeekends</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> getWorkdaysInRange</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(start, end, </span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">false</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">);</span></span>
- <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'Workdays excluding weekends:'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, workdaysExcludingWeekends);</span></span></code></pre></div><h2 id="findworkday-查找工作日" tabindex="-1"><code>findWorkday</code> 查找工作日 <a class="header-anchor" href="#findworkday-查找工作日" aria-label="Permalink to "\`findWorkday\` 查找工作日""></a></h2><p>查找从今天开始 未来的第 {deltaDays} 个工作日。</p><div class="language-js vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">js</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 查找从今天开始 未来的第 {deltaDays} 个工作日</span></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 如果 deltaDays 为 0,首先检查当前日期是否为工作日。如果是,则直接返回当前日期。</span></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 如果当前日期不是工作日,会查找下一个工作日。</span></span>
- <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> currentWorkday</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> findWorkday</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">0</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">);</span></span>
- <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(currentWorkday);</span></span>
- <span class="line"></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 查找从今天开始未来的第一个工作日</span></span>
- <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> nextWorkday</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> findWorkday</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">);</span></span>
- <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(nextWorkday);</span></span>
- <span class="line"></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 查找从今天开始之前的前一个工作日</span></span>
- <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> previousWorkday</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> findWorkday</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">-</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">1</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">);</span></span>
- <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(previousWorkday);</span></span>
- <span class="line"></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 可以传第二个参数 查找具体日期的上下工作日</span></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 查找从 2024-05-18 开始,未来的第二个工作日</span></span>
- <span class="line"><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;">const</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;"> secondNextWorkday</span><span style="--shiki-light:#D73A49;--shiki-dark:#F97583;"> =</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;"> findWorkday</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#005CC5;--shiki-dark:#79B8FF;">2</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">, </span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'2024-05-18'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">);</span></span>
- <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(secondNextWorkday);</span></span></code></pre></div><h2 id="getdaydetail-获取日期信息" tabindex="-1"><code>getDayDetail</code> 获取日期信息 <a class="header-anchor" href="#getdaydetail-获取日期信息" aria-label="Permalink to "\`getDayDetail\` 获取日期信息""></a></h2><p>函数用于检查指定日期是否是工作日,并返回一个是否工作日的布尔值和日期的详情。</p><ol><li>如果指定日期是工作日,则返回 true 和工作日名称,如果是被调休的工作日,返回 true 和节假日详情。</li><li>如果是节假日,则返回 false 和节假日详情。</li></ol><div class="language-js vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang">js</span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 示例用法</span></span>
- <span class="line"></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 正常工作日 周五</span></span>
- <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">getDayDetail</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'2024-02-02'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)); </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// { "date": "2024-02-02", "work":true,"name":"Friday"}</span></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 节假日 周末</span></span>
- <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">getDayDetail</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'2024-02-03'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)); </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// { "date": "2024-02-03", "work":false,"name":"Saturday"}</span></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 调休需要上班</span></span>
- <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">getDayDetail</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'2024-02-04'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)); </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// { "date": "2024-02-04", "work":true,"name":"Spring Festival,春节,3"}</span></span>
- <span class="line"><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// 节假日 春节</span></span>
- <span class="line"><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">console.</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">log</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#6F42C1;--shiki-dark:#B392F0;">getDayDetail</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">(</span><span style="--shiki-light:#032F62;--shiki-dark:#9ECBFF;">'2024-02-17'</span><span style="--shiki-light:#24292E;--shiki-dark:#E1E4E8;">)); </span><span style="--shiki-light:#6A737D;--shiki-dark:#6A737D;">// { "date": "2024-02-17", "work":false,"name":"Spring Festival,春节,3"}</span></span></code></pre></div>`,13)]))}const g=i(t,[["render",l]]);export{o as __pageData,g as default};
|