Годовая строка в Javascript - PullRequest
2 голосов
/ 30 декабря 2011

Я совершенно новичок в javascript, и у меня очень простой вопрос: как использовать строку текущего года?

Должен ли я выглядеть так?

var currentyear = now.getYear();

И затем я хочу использовать эту строку в следующем фрагменте кода (строка всегда должна заменять 2011)

drawDayEvents('2011-12-27', '#day1');
drawDayEvents('2011-12-28', '#day2');
drawDayEvents('2011-12-29', '#day3');
drawDayEvents('2011-12-30', '#day4');

...

var start = new Date(2011, 12-1, 27);
var end = new Date(2011, 12-1, 31);
if((time < start) || (time > end)) {
time.setYear(2011);

Должно ли это быть так?

var currentyear = now.getYear();

drawDayEvents('$currentyear-12-27', '#day1');
drawDayEvents('$currentyear-12-28', '#day2');
drawDayEvents('$currentyear-12-29', '#day3');
drawDayEvents('$currentyear-12-30', '#day4');

...

var start = new Date($currentyear, 12-1, 27);
var end = new Date($currentyear, 12-1, 31);
if((time < start) || (time > end)) {
time.setYear($currentyear);

Ответы [ 2 ]

6 голосов
/ 30 декабря 2011

Вместо этого следует использовать getFullYear(), потому что getYear() вернет год минус 1900.

var currentyear = now.getFullYear();

В этой строке:

drawDayEvents('$currentyear-12-27', '#day1');

JavaScript не может интерполировать переменные, как PHP. Вам нужно согласовать строки.

drawDayEvents(currentyear+'-12-27', '#day1');

Переменные в JavaScript не должны начинаться с префикса $ (они могут содержать $, если хотите).

var start = new Date(currentyear, 12-1, 27);
var end = new Date(currentyear, 12-1, 31);
if((time < start) || (time > end)) {
  time.setYear(currentyear);
}

Документы для JavaScript Дата: https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date

5 голосов
/ 30 декабря 2011

Вы можете получить год следующим образом:

var yr = new Date().getFullYear();

, а затем использовать оператор + (конкатенация строк), чтобы присоединить его к другой строке:

drawDayEvents(yr + "-12-27", "#day1");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...