У меня проблема при сравнении двух строк (оба являются переменными, означающими, что это могут быть любые даты). Формат этих двух строк - yyyy-MM-dd.Как сравнить две строковые переменные с javascript?
У меня есть две строки дат «строка1» и «строка2», а строка1 - с использованием формата даты yyyy-MM-dd и строки 2 с использованием того же формата yyyy-MM-dd. Что я должен использовать, если я хочу, чтобы сравнить его с логикой, когда string1 < строка2 возвращенная строка результата, как «X»
Что я тока у которых не работает первой попытке использовать .substring, чтобы получить правильный формат из строки 1.
var string1 = str1.substring(0, 5) + str1.substring(5, 8) + str1.substring(8, 11);
var string2 = str2
if (string1 < string2) {
dateresult= 'X';
}
Любая идея будет оценена по достоинству.
Заранее спасибо.
Если строки уже в формате 'YYYY-MM-dd', то вы можете просто сделать' '<сравнение на них напрямую и это должно сработать, потому что хотя это сравнение с лексической строкой, с датами в этом формате лексический порядок строк также является порядком даты. Ваша вещь с '.substring()' бессмысленна - она просто извлекает первые 10 символов исходной строки в три части, а затем помещает их обратно в одном порядке (если только ваш исходный ввод не имел больше символов после даты?) , – nnnnnn
Странная вещь, если я определяю строку 1 для некоторой даты фиксации, она работает. например var string1 = '1881-05-09'; но если я использую .substring для его форматирования, это не сработает. Вот почему я понятия не имею, где пошло не так. – James0419
Пожалуйста, отредактируйте вопрос, чтобы показать свои фактические данные. (Например, как вы присвоили значения 'str1' и' str2'.) – nnnnnn