我從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