function commonDateJiSuan(Strat, End) { if (Strat && End) { // 设置假期开始日期和结束日期 const startDate = new Date(Strat); const endDate = new Date(End); // 设置节假日列表 const holidayList = [ //元旦 new Date('2023-01-01'), //春节 new Date('2023-02-01'),new Date('2023-02-02'),new Date('2023-02-03'), new Date('2023-02-04'),new Date('2023-02-05'),new Date('2023-02-06'),new Date('2023-01-07'), //清明节 new Date('2023-04-04'),new Date('2023-04-05'),new Date('2023-04-06'), //劳动节 new Date('2023-05-01'),new Date('2023-05-02'),new Date('2023-05-03'), //端午节 new Date('2023-06-02'),new Date('2023-06-03'),new Date('2023-06-04'), //中秋节 new Date('2023-09-30'),new Date('2023-10-01'),new Date('2023-10-02'), //国庆节 new Date('2023-10-03'),new Date('2023-10-04'),new Date('2023-10-05'), new Date('2023-10-06'),new Date('2023-10-07') ]; // 排除周六、周日和节假日 const count = Array.from( {length: (endDate - startDate) / (1000 * 60 * 60 * 24) + 1}, (_, i)=> new Date(startDate.getTime() + i * 24 * 60 * 60 * 1000)).filter((date)=> date.getDay() !== 0 && date.getDay() !== 6 && !holidayList.some((holiday)=> holiday.getFullYear() === date.getFullYear() && holiday.getMonth() === date.getMonth() && holiday.getDate() === date.getDate()) ).length; return count; } }
时间: 2024-03-31 09:34:55 浏览: 14
这段代码是一个 JavaScript 函数,用于计算两个日期之间的工作日天数(排除周六、周日和节假日)。函数的参数 `Start` 和 `End` 分别表示起始日期和结束日期,格式为 `'yyyy-mm-dd'`。
函数首先创建了起始日期对象 `startDate` 和结束日期对象 `endDate`,然后定义了一个节假日列表 `holidayList`。节假日列表中包含了元旦、春节、清明节、劳动节、端午节、中秋节、国庆节等节日的日期。
接着,函数使用 `Array.from()` 方法创建一个数组,数组的长度为起始日期和结束日期之间相差的天数加1。然后使用 `filter()` 方法将数组中的周六、周日和节假日排除掉,最后返回剩余的工作日天数。
需要注意的是,这个函数计算工作日天数的算法并不完全准确,因为某些节假日可能会调整工作日。如果需要更精确的计算方法,可以参考国务院关于放假的公告和相关法律法规,或者调用第三方的节假日 API。
相关问题
#include<iostream> using namespace std; int main(){ //逆置该数组 int arr[]={1,2,3,4,5}; int strat = 0; int end =sizeof(arr)/sizeof(arr[0]-1); for (int i = 0; i < sizeof(arr)/sizeof(arr[0]); i++) { if (strat<end){ int num=arr[strat]; arr[strat]= arr[end]; arr[end]=num; end--; strat++; // cout<<arr; } cout<<arr[i]<<endl; } system("pause"); return 0; }
你的问题是如何逆置一个整数数组。
你可以使用两个指针,一个指向数组的开头,一个指向数组的末尾。然后交换指针指向的元素,并将指针向中间移动,直到两个指针相遇。
下面是一个示例代码:
```cpp
#include<iostream>
using namespace std;
void reverseArray(int arr[], int size) {
int start = 0;
int end = size - 1;
while (start < end) {
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
start++;
end--;
}
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int size = sizeof(arr) / sizeof(arr[0]);
reverseArray(arr, size);
for (int i = 0; i < size; i++) {
cout << arr[i] << " ";
}
return 0;
}
```
这段代码会将数组逆置,并输出逆置后的结果。
希望对你有所帮助!如果有任何疑问,请随时向我提问。
F.softmax(outputs[:0:self.strat_num] / 2.0是什么意思
这行代码使用了 PyTorch 中的 softmax 函数 F.softmax,对模型的输出进行了处理。具体来说,它将模型输出的前 strat_num 个元素除以 2.0,然后对其进行 softmax 计算,得到的结果是一个概率分布。其中除以 2.0 的操作可以看作是对模型输出的缩放,缩小输出值的范围,使得 softmax 输出的概率更加明显,更容易区分。