我从MySQL数据库字段获得了该值:“9月9日@ 08:00 - 17:00”。 我可以将此客户端更改为9月9日?我尝试过使用JavaScript,但我并没有接近。从数据库客户端更改文本
日期可能会更改。
期望的结果在浏览器中:9月9日
谢谢
我从MySQL数据库字段获得了该值:“9月9日@ 08:00 - 17:00”。 我可以将此客户端更改为9月9日?我尝试过使用JavaScript,但我并没有接近。从数据库客户端更改文本
日期可能会更改。
期望的结果在浏览器中:9月9日
谢谢
这对来自数据库的日期时间值相当少见的输出。一个解决方案是@
字符之后简单地去除所有文字 - 如果你确定输出格式保持原样是:
var datetime = 'september 9 @ 19:20 - 20:00';
var result = datetime.substr(0, datetime.indexOf('@')).trim();
console.log(result); // outputs 'september 9'
var date = new Date(result);
var months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
console.log(date.getDate(), months[date.getMonth()]); // outputs '9 September'
嗨Jason K, 谢谢你的回应。是的,它是一个nvarchar字段中的字符串。 但它是:9月9日@ 08:00 - 17:00 如何使用代码切换日期和月份? – user6079228
嗨thx,但那不是我正在寻找的笏。该字段的价值可能会激化,您不必将其视为日期。我只想打败前两个字。 – user6079228
第二个输出是Safari中的'NaN undefined'。请参阅[*为什么Date.parse提供不正确的结果?](https://stackoverflow.com/questions/2587345/why-does-date-parse-give-incorrect-results) – RobG
你想要的值是字符串,所以只是重新格式化它:
var s = 'September 9 @ 08:00 - 17:00';
var b = s.split(' ');
console.log(b[1] + ' ' + b[0]);
// You could even do
console.log(s.replace(/(\w+) (\d+)(.*)/, '$2 $1'));
// Or if you want to just swap the month and day and keep the rest
console.log(s.replace(/(\w+) (\d+)/, '$2 $1'));
'我试着用JavaScript'我们可以看到你什么索引树d? – fvu
你确定从mysqldb'“9月9日@ 08:00 - 17:00”获得格式吗'' – prasanth
@fvu 我会在今天晚上上当家。不要指望太多:) – user6079228