news 2026/7/15 10:42:17

在云函数中如何实现自定义国际时区UTC - JavaScript

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
在云函数中如何实现自定义国际时区UTC - JavaScript

在云函数中使用配置时区的方式通过代码控制
下面写两个版本:
版本一:使用服务器本地时间(服务器时区是东八区)
版本二:使用UTC时间并转换为东八区时间
获取当前日期时间格式化为 YYYY-MM-DD HH:MM:SS 格式的函数

1. 基本函数(本地时间):

functiongetCurrentDateTime(){constnow=newDate();// 获取各个时间部分constyear=now.getFullYear();constmonth=String(now.getMonth()+1).padStart(2,'0');// 月份从0开始constday=String(now.getDate()).padStart(2,'0');consthours=String(now.getHours()).padStart(2,'0');constminutes=String(now.getMinutes()).padStart(2,'0');constseconds=String(now.getSeconds()).padStart(2,'0');return`${year}-${month}-${day}${hours}:${minutes}:${seconds}`;}// 调用示例console.log(getCurrentDateTime());// 输出: 2025-12-14 15:30:45

2. 完整版本(支持自定义时区):

timezoneOffset - 时区偏移(小时),默认为系统时区,适合获取国际时区

/** * 获取当前日期时间 * @param {number} timezoneOffset - 时区偏移(小时),默认为系统时区 * @returns {string} 格式化的日期时间字符串 YYYY-MM-DD HH:MM:SS */functiongetCurrentDateTime(timezoneOffset=null){constnow=newDate();letdateObj;if(timezoneOffset!==null){// 计算指定时区的时间constutc=now.getTime()+(now.getTimezoneOffset()*60000);dateObj=newDate(utc+(timezoneOffset*3600000));}else{dateObj=now;}// 格式化各部分constyear=dateObj.getFullYear();constmonth=String(dateObj.getMonth()+1).padStart(2,'0');constday=String(dateObj.getDate()).padStart(2,'0');consthours=String(dateObj.getHours()).padStart(2,'0');constminutes=String(dateObj.getMinutes()).padStart(2,'0');constseconds=String(dateObj.getSeconds()).padStart(2,'0');return`${year}-${month}-${day}${hours}:${minutes}:${seconds}`;}// 使用示例console.log(getCurrentDateTime());// 本地时间console.log(getCurrentDateTime(8));// 东八区(北京时间)console.log(getCurrentDateTime(0));// UTC时间

3. 更高级的版本(处理时区问题,推荐用于云函数):

由于云函数通常运行在 UTC 时区,建议使用 UTC 时间并转换为北京时间:

/** * 获取北京时间(东八区) * 云函数通常运行在UTC时区,所以需要转换 */functiongetBeijingTime(){constnow=newDate();// 转换为北京时间(UTC+8)constbeijingOffset=8*60*60*1000;// 8小时的毫秒数constbeijingTime=newDate(now.getTime()+beijingOffset);// 使用UTC方法获取,避免时区干扰constyear=beijingTime.getUTCFullYear();constmonth=String(beijingTime.getUTCMonth()+1).padStart(2,'0');constday=String(beijingTime.getUTCDate()).padStart(2,'0');consthours=String(beijingTime.getUTCHours()).padStart(2,'0');constminutes=String(beijingTime.getUTCMinutes()).padStart(2,'0');constseconds=String(beijingTime.getUTCSeconds()).padStart(2,'0');return`${year}-${month}-${day}${hours}:${minutes}:${seconds}`;}// 使用consttoday=getBeijingTime();constuserContent=`今天日期:${today}`;

4. 简化版本:

// 一行代码获取格式化时间constgetCurrentTime=()=>newDate().toISOString().replace('T',' ').substring(0,19);// 或者constgetCurrentDateTime=()=>newDate().toLocaleString('sv-SE').replace(' ',' ');// 调用console.log(getCurrentDateTime());// 输出: 2025-12-14 15:30:45

5.懒人版直接下载文章附件运行

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/14 15:18:49

告别数据孤岛!BookStack 搭配 cpolar 让知识库随身带

文章目录前言1. 安装Docker2. Docker镜像源添加方法3. 创建并启动BookStack容器4. 登录与简单使用5. 公网远程访问本地BookStack5.1 内网穿透工具安装5.2 创建远程连接公网地址5.3 使用固定公网地址远程访问**BookStack 解决了知识管理的整合问题,cpolar 则突破了局…

作者头像 李华
网站建设 2026/7/15 14:18:00

Transformer模型完全指南:从零开始学习大模型架构【收藏必学】

Transformer是谷歌2017年提出的神经网络架构,通过自注意力机制捕捉单词间依赖关系。以翻译任务为例,其工作流程包括:1)文本编码为嵌入向量(含位置信息);2)线性变换生成查询、键、值向量;3)Softmax归一化计算权重&#…

作者头像 李华
网站建设 2026/7/15 14:35:41

数据访问:MyBatisMybatis-Plus

Spring Boot集成MyBatisSpring Boot集成MyBatis的步骤添加依赖 在pom.xml文件中添加MyBatis和数据库驱动依赖。以MySQL为例&#xff1a;<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifact…

作者头像 李华
网站建设 2026/7/15 15:27:03

springboot集成h2内存数据库运行测试用例

springboot集成h2内存数据库运行测试用例 首先引入我们的依赖 引入h2的依赖和spring的依赖 dependencies {implementation org.springframework.boot:spring-boot-h2consoleimplementation org.springframework.boot:spring-boot-starter-data-jdbc// 引入h2内存数据库runtimeO…

作者头像 李华
网站建设 2026/7/15 15:19:14

【期末复习02】-分析题和改错题作业

文章目录【期末复习02】-分析题和改错题项目结构分析题01分析题02分析题03分析题04二、程序改错题(20分)项目结构改错题01改错题02【期末复习02】-分析题和改错题 项目结构 分析题01 分析题02 分析题03 分析题04 二、程序改错题(20分) 项目结构 改错题01 考察知识点&#xff…

作者头像 李华
网站建设 2026/7/15 3:51:06

8亿参数Seed-Coder重塑智能编程未来

Seed-Coder-8B&#xff1a;当代码遇见“懂你”的AI 在某个深夜的调试现场&#xff0c;开发者盯着屏幕上第17个测试失败的用例&#xff0c;手指悬停在键盘上犹豫不决——变量命名是否一致&#xff1f;边界条件是否遗漏&#xff1f;API调用是否有误&#xff1f;这种熟悉的窒息感&…

作者头像 李华