Почему я не могу получить длину dateobject.getMonth ()? - PullRequest
2 голосов
/ 16 апреля 2019

Я следовал инструкциям в этом вопросе.

Вот мой код:

    edate = new Date()
    edate.setYear(edate.getFullYear() + 1);
    month = edate.getMonth();
    console.log(month);
    console.log(month.length);

Возвращает:

3
undefined

1 Ответ

3 голосов
/ 16 апреля 2019

В коде, который вы указали в другом вопросе, значение, сохраненное в month, было преобразовано в String.Это можно сделать следующим образом (конкатенация с пустым String вызывает преобразование toString()):

month = '' + edate.getMonth();

Значение Number не имеет свойства length, но значение String имеет.Это то, что использовалось в исходном коде.

Обновление

Более понятный подход (как уже упоминалось) заключается в использовании конструктора String, который принимает Number в качестве входных данных и преобразует егоString, например так:

month = String(edate.getMonth());

Или вы можете toString() напрямую вызвать для вас значение, возвращаемое из getMonth(), например:

month = edate.getMonth().toString();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...