到目前為止,我的代碼檢查日期天氣是否有效,但我不知道如何獲取我在輸入欄位中輸入的日期的日期名稱。例如:如果我輸入 12/01/1994 它應該列印星期三
function isValidDate(inputDate) {
if (!/^\d{1,2}\/\d{1,2}\/\d{4}$/.test(inputDate)) return false;
var parts = inputDate.split('/'); //12 01 1994
var day = parseInt(parts[0], 10);
var month = parseInt(parts[1], 10);
var year = parseInt(parts[2], 10);
if (year < 1000 || year > 3000 || month == 0 || month > 12) return false;
var monthLength = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
if (year % 400 == 0 || (year % 100 != 0 && year % 4 == 0)) monthLength[1] = 29;
return day > 0 && day <= monthLength[month - 1];
}
class Inputdate extends React.Component {
state = {
inputDate: '',
day: '',
};
render() {
console.log(this.state);
return (
<div>
<input
name="date"
type="text"
value={this.state.value}
placeholder="dd-mm-yyyy"
onChange={(e) => {
if (isValidDate(e.target.value)) {
this.setState({ inputDate: e.target.value });
} else {
this.setState({ inputDate: 'invalid date' });
}
}}
/>
<p>{this.state.inputDate}</p>
</div>
);
}
}
uj5u.com熱心網友回復:
const event = new Date(Date.UTC(2012, 11, 20, 3, 0, 0));
const options = { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' };
var date = event.toLocaleDateString(undefined, options)
var day = date.split(',')[0] // This will show you the day name.
console.log(day)
uj5u.com熱心網友回復:
這應該有效:
let d = new Date("12/01/1994")
const weekday = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"]
let day = weekday[d.getDay()];
console.log(day)
uj5u.com熱心網友回復:
我認為在使用toLocaleStringjavscript 中的日期時使用是更好的做法,例如,如果您嘗試使用具有作業日的陣列并通過日期格式從中獲取特定字串是不好的,因為在 IOS 上您將得到undefined,因為“1994年12月1日”是不是由ECMA-262支持這樣決議實作將依賴和iOS將它視為無效的日期格式。
const getWeekday = (dateFormat) => {
// split date in non-digit chaarcters
let [d, m, y] = dateFormat.split(/\D/);
//put them in Date method
const date = new Date(y, m - 1, d)
//and return weekday in long format
const weekday = date.toLocaleString("default", { weekday: "long" })
return weekday
}
console.log(getWeekday('12/01/1994'))
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/370068.html
標籤:javascript 反应
上一篇:隱藏塊而不是洗掉
