JS 将字符串转换成日期类型 字符串转换成日期形式

本文介绍如何将字符串形式的日期转换为JavaScript中的日期对象,并展示了如何使用该对象获取年、月、日等信息。

将字符串形式的日期转换成日期对象

var strTime="2011-04-16"; //字符串日期格式           
var date= new Date(Date.parse(strTime.replace(/-/g,   "/"))); //转换成Data();

var month=date.getMonth()+1; //获取当前月份

------------------------------------------------------------------------------------------------------

date.getYear();        //获取当前年份(2位)
date.getFullYear();    //获取完整的年份(4位,1970-????)
date.getMonth();       //获取当前月份(0-11,0代表1月)
date.getDate();        //获取当前日(1-31)
date.getDay();         //获取当前星期X(0-6,0代表星期天)
date.getTime();        //获取当前时间(从1970.1.1开始的毫秒数)
date.getHours();       //获取当前小时数(0-23)
date.getMinutes();     //获取当前分钟数(0-59)
date.getSeconds();     //获取当前秒数(0-59)
date.getMilliseconds();    //获取当前毫秒数(0-999)
date.toLocaleDateString();     //获取当前日期
var mytime=date.toLocaleTimeString();     //获取当前时间
date.toLocaleString( );        //获取日期与时间

### 将字符串转换为指定日期格式(YYYYMMDD) 在 JavaScript 中,可以利用自定义函数来实现将字符串转换为目标日期格式的功能。通过解析输入的字符串并重新组合成所需的 `YYYYMMDD` 格式,能够满足需求。 以下是基于提供的参考资料中的方法实现的一个解决方案: #### 实现代码 ```javascript function dateStringFormatter(inputDateStr) { const date = new Date(inputDateStr); const YYYY = date.getFullYear(); const MM = String(date.getMonth() + 1).padStart(2, '0'); // 获取月份并补零 const DD = String(date.getDate()).padStart(2, '0'); // 获取日并补零 return `${YYYY}${MM}${DD}`; } // 测试用例 console.log(dateStringFormatter("2023-07-15")); // 输出: 20230715 console.log(dateStringFormatter(new Date())); // 当前日期按 YYYYMMDD 格式输出 ``` 上述代码实现了将任意合法的日期字符串或当前日期对象转化为目标格式 `YYYYMMDD` 的功能[^2]。其中的关键在于使用了 `padStart()` 方法确保月和日始终占据两位数长度。 如果需要更灵活的时间格式化支持,则可以直接调用参考资料中提到的通用时间格式化工具 `dateFormater` 函数,并设置相应的模板参数: #### 使用通用格式化器 ```javascript function dateFormater(formater, t){ let date = t ? new Date(t) : new Date(), Y = date.getFullYear() + '', M = date.getMonth() + 1, D = date.getDate(); return formater.replace(/YYYY|yyyy/g,Y) .replace(/YY|yy/g,Y.substr(2,2)) .replace(/MM/g,(M<10?'0':'') + M) .replace(/DD/g,(D<10?'0':'') + D); } // 调用示例 const formattedDate = dateFormater('YYYYMMDD', "2023-07-15"); console.log(formattedDate); // 输出: 20230715 ``` 此版本允许传入不同的模板字符串来自由定制最终输出形式,灵活性更高。 --- 问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值