不同数据库SQL日期转换为yyyy-mm-dd格式的方法
一篇随手记,整理MySQL、SQL Server、Oracle、PostgreSQL里把日期转成yyyy-mm-dd的几种写法,省得每次都要翻文档。
支持通配符SSL证书、多域名证书、IP证书。适配ACME接口, 支持Zerossl、Let's Encrypt和Google等渠道。登录已有账号
2026-06-07 22:15:35 Uniapp 日期格式化 JavaScript
写 Uniapp 应用的时候,显示当前时间是个特别常见的需求,登录页、打卡页、聊天列表里都会用上。我习惯把这些日期相关的处理单独封到一个文件里,省得每个页面都去 new Date 再拼字符串,代码也干净点。
下面是我常用的 dateUtil.js,三个方法,覆盖了绝大部分场景。
/**
* uniapp日期工具类
* 1. 系统默认格式化
* 2. 自定义格式化(YYYY-MM-DD HH:mm:ss)
* 3. 获取星期几
*/
// 系统默认格式化
export function getDefaultTime() {
return new Date().toLocaleString()
}
// 自定义格式化
export function formatTime(date = new Date()) {
const year = date.getFullYear()
const month = (date.getMonth() + 1).toString().padStart(2, '0')
const day = date.getDate().toString().padStart(2, '0')
const hours = date.getHours().toString().padStart(2, '0')
const minutes = date.getMinutes().toString().padStart(2, '0')
const seconds = date.getSeconds().toString().padStart(2, '0')
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`
}
// 获取星期几
export function getWeekDay(date = new Date()) {
const days = ['周日', '周一', '周二', '周三', '周四', '周五', '周六']
return days[date.getDay()]
}
getDefaultTime 直接用了 toLocaleString(),出来的效果类似 “2023/5/20 14:30:45”。这个格式和系统的语言、区域设置有关,不同设备可能不完全一样。如果只是想快速看个时间,完全够用,但要展示给用户或者入库,最好还是用自定义格式化。
formatTime 就是手动拼的,固定返回 “YYYY-MM-DD HH:mm:ss” 这种结构。getMonth() 返回的月份从 0 开始,所以记得 +1,然后 padStart(2, '0') 补零,保证始终是两位数字。
getWeekDay 更简单,getDay() 拿到 0-6 的数字,去中文数组里取对应的值就拿到 “周六” 这样的结果了。有些场景只用数字星期几的话,直接返回数字也行,不过我这里需要中文,所以加了映射。
页面集成也不复杂。建三个数据字段,onLoad 或者点按钮的时候调一下方法赋上值就行。
<template>
<view class="container">
<view class="time-card">
<text class="title">当前时间</text>
<text class="time">{{ defaultTime }}</text>
<text class="label">系统默认格式</text>
</view>
<view class="time-card">
<text class="title">格式化时间</text>
<text class="time">{{ formattedTime }}</text>
<text class="label">YYYY-MM-DD HH:mm:ss</text>
</view>
<view class="time-card">
<text class="title">今天是</text>
<text class="time">{{ weekDay }}</text>
</view>
<button @click="refreshTime" class="refresh-btn">刷新时间</button>
</view>
</template>
<script>
import { getDefaultTime, formatTime, getWeekDay } from '@/utils/dateUtil'
export default {
data() {
return {
defaultTime: '',
formattedTime: '',
weekDay: ''
}
},
onLoad() {
this.refreshTime()
},
methods: {
refreshTime() {
this.defaultTime = getDefaultTime()
this.formattedTime = formatTime()
this.weekDay = getWeekDay()
uni.showToast({
title: '时间已刷新',
icon: 'success'
})
}
}
}
</script>
<style>
/* 样式代码根据自己项目调整,这里就不展开了 */
</style>
页面上三个卡片分别展示了三种时间信息,底部放了个刷新按钮,点了就重新拿一次当前时间,顺便弹个 toast 告诉用户已更新。这块样式没什么好说的,按设计稿来就行。
把日期逻辑拆出来之后,多个页面要显示时间直接 import 就能用,不用到处复制代码。而且用标准 Date 对象,跨平台一致性也不用操心,iOS、Android、小程序都是一套逻辑。
需要定时刷新的话,可以在页面里加个 setInterval 调用 refreshTime,这是后话了。
一篇随手记,整理MySQL、SQL Server、Oracle、PostgreSQL里把日期转成yyyy-mm-dd的几种写法,省得每次都要翻文档。
JSON数据满天飞,校验格式是常事。你是否还在尝试用复杂的正则表达式与嵌套的JSON搏斗?小心!正则可能让你陷入陷阱。本文将揭示为何`JSON.parse()`是JavaScript中校验JSON格式的黄金标准——它不仅能轻松应对各种嵌套,而且使用简单,准确无误。别再走弯路了,一起来看看如何高效校验!
还在为按钮状态切换烦恼吗?本文将以最简单的方式,一步步教你如何用JavaScript改变按钮的颜色和样式。通过为按钮添加点击事件,你将学会如何清除所有按钮的选中状态,并为当前点击的按钮应用独特的选中样式。零基础也能轻松上手,让你的网页交互瞬间生动起来!
在Uniapp中实现精准位置获取是否让你感到头疼?权限复杂、坐标转换麻烦、逆地理编码无从下手?别担心!本文提供了一套完整的解决方案,详细介绍如何高效处理权限、获取准确坐标并集成第三方地图SDK进行地址解析,彻底解决你的定位痛点。
想要高效处理复杂数据转换?JS `map`方法正是你的理想选择。本文将聚焦`map`在实际前端项目中的应用场景,从数据格式化、列表渲染到API响应处理,通过一系列实用示例,展示如何巧妙运用`map`简化代码、提高开发效率,助你轻松应对各种数据挑战。