Ich habe Datumszeichenfolge wie diese 1 May 2010 To 15 Aug 2016
. Ich möchte dies nur als Datumszeichenfolge auf meine Funktion überprüfen und nicht auf eine Funktion fortfahren.Wenn ich diese Zeichenfolge mit new Date(value)
überprüfe, wird das ungültige Datum zurückgegeben .Wie kann ich das als Datum prüfen?Check isDate wird zurückgegeben Ungültiges Datum
Antwort
var checkDate = function (str){
var dates = str.split("To");
for(var i = 0; i < dates.length; i++) {
if (moment(dates[i]).isValid()) {
return true;
} else {
return false;
}
}
}
ich diese Funktion in meinem Code überall verwenden kann.
Ich habe meine Funktion nach Ihren Bedürfnissen geändert. Sie müssen es auf diese Weise tun. bitte prüfe. Hier hat Ihr Code nicht die Möglichkeit, den zweiten Teil des Arrays zu überprüfen. Beispiel: Denken Sie an den Fall "1. Mai 2001 bis 15. August 20a6". es wird wahr zurückkommen. aber der zweite Teil ist nicht gültig. Überprüfen Sie meine Funktion und wenn es in Ordnung ist, markieren Sie es als akzeptiert, da es anderen helfen würde. –
Sie können die gesamte Funktion durch 'str.split ('To') .every (s => return moment (s) .isValid()); ersetzen, aber Sie sollten dem Parser das String-Format zur Verfügung stellen. – RobG
var str = "1 May 2010 To 15 Aug 2016";
//First split string
var array = str.split("To");
//then check if both are dates
for(var i = 0; i < array.length; i++) {
if(isNaN(new Date(array[i]))) { //Checking date
alert(array[i]+ ' is not valid date');
}
}
Ich würde js Datum Bibliothek Moment js dafür verwenden.
var checkDate = function (str){
var dates = str.split("To");
var flag = true;
for(var i = 0; i < dates.length; i++) {
if (moment(dates[i]).isValid()) {
flag = false;
}
}
return flag;
}
Ich habe eine Geige für den
erstelltIch hatte Wechsel Ihre Funktion und ich bevorzuge es in meinem Code. Danke und sehe meine Antwort. –
Danke Kumpel, es spart mir Zeit! –
Bitte tun Sie das nicht. Lesen und befolgen Sie [* die Dokumentation *] (http://momentjs.com/docs/#/parsing/string/) und ** immer ** geben Sie das Format der Zeichenfolge an, die analysiert werden soll. Andernfalls überlassen Sie es dem Parser, zu erraten. Es gibt den ersten Versuch zurück, der ein gültiges Datum zurückgibt, nicht unbedingt das "richtige" Datum. – RobG
Beim Analysieren von Strings sollten Sie immer das Format der zu analysierenden Zeichenfolge angeben. Dies kann sehr einfach durchgeführt werden unter Verwendung des ES5 jedes Methode:
var isValid = '1 May 2010 To 15 Aug 2016'.split(' To ').every(function(s) {
return moment(s,'D MMM YYYY').isValid();
});
console.log(isValid);
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.14.1/moment.js"></script>
Wenn Pfeil Funktionen in Ordnung sind, dann:
var isValid = '1 May 2010 To 15 Aug 2016'.split(' To ').every(s=>moment(s,'D MMM YYYY').isValid());
macht die Arbeit.
- 1. Ungültiges Datum wird zurückgegeben
- 2. Ungültiges Datum: ""
- 3. Datum strptime liefert ungültiges Datum
- 4. Warum wird ein ungültiges Datum erfolgreich als echtes Datum analysiert?
- 5. Ungültiges Datum mit DateFormat.parse()
- 6. MySQL Einfügen ungültiges Datum
- 7. Das Datum von datetimepicker wird zurückgegeben undefined
- 8. Zend_Date :: isDate erzwingt nicht $ format
- 9. Javascript Form Datum Check
- 10. MomentJs ungültiges Datum von picker
- 11. fmdb Einfügendatum gibt "ungültiges Datum"
- 12. Post Datum Format Fehler: Ungültiges Datum
- 13. Datum Objekt ungültiges Datum mit Zeitzonen werfen
- 14. java.text.ParseException: Ungültiges Datum (Deutsch, Ukrainisch)
- 15. Solr: Ungültiges Datum String: '1996'
- 16. keine jekyll site ... ungültiges Datum
- 17. Rails analysieren ungültiges Datum Fehler
- 18. Der Ausdruck ungültiges Datum Konstante
- 19. Loopback Api Explorer erstellen Fehler: ungültiges Datum
- 20. Momentjs falsches Datum zurückgegeben
- 21. Check Variable Daten gibt ein Datum Objekt
- 22. Handhabung Millisekunden in SQL mit IsDate() Funktion
- 23. isdate Funktion in ssis abgeleitete Komponente
- 24. Schreiben einer IsDate() Entsprechung in C#?
- 25. Java 8 LocalDateTime analysiert ungültiges Datum
- 26. jQuery - Wenn ich formatierte Datum, dann geht das Datum auf ungültiges Datum
- 27. Ungültiges Datum ArgumentError und falsches Parsing an einem gültigen Datum?
- 28. 'ungültiges' Datum in einer Datenbank speichern
- 29. Ich bekomme ein ungültiges Datum in iPhone
- 30. java.text.ParseException: Ungültiges Datum: "01:19 PM"
Es gibt zwei Daten? 1. Mai 2010 und 15. August 2016. Sie sollten diese teilen und beide überprüfen. – Evus
inspiration http://stackoverflow.com/questions/492994/compare-two-dates-with-javascript – daremachine
es gibt zwei Daten und sind diese Daten von Ihnen oder (statisch) oder von einigen, wie dynamische –