2013-07-18 2 views
-2

Если мне нужно использовать метод .toDateString(), чтобы отображать даты, как лучше всего это сделать?Отображение содержимого на основе даты в Javascript

Например: позволяет сказать, что, если его между 1-й и 7-го месяца, сообщение будет читать «х» и все остальное «у»

Спасибо очень много заранее, работая с датами отстой!

+1

Вы еще что-нибудь пробовали? – Pieter

+1

Если этот вопрос является частью задания [(как кажется)] (http://stackoverflow.com/questions/17735363/displaying-content-based-on-the-date-in-javascript#comment25854962_17735419). Лучше всего раскрывать это в органе вопросов. Таким образом, люди не просто дадут вам ответ, а скорее помогут вам на своем пути найти решение. :) – Lix

ответ

1

Если вы используете метод .toDateString(), значит, вы являетесь владельцем объекта Date()! У этого объекта есть много других полезных вспомогательных функций. Один из них может вас заинтересовать. Это getDate() function.

Функция getDate() возвращает целое число от 1 до 31. Таким образом, вы сможете просто посмотреть на возвращаемое значение и действовать соответствующим образом.

очень простой пример:

var d = new Date(); 

switch(d.getDate()){ 
    case 1: 
    case 7: 
    // behavior for days that are the 1st or 7th of the month 
    break; 
    default: 
    // behavior for any day that is not the 1st of 7th of the month 
} 

Ссылка -

+0

Я должен использовать метод .todatestring() для удовлетворения этих требований к присваиваниям, это отстой, потому что у меня уже есть хороший код для этого, но ничего, что использует этот метод. –

+0

Спасибо за этот ответ, хотя, я понимаю, что вы говорите! Изучение javascript было ветерок, пока мы не добрались до дат ха-ха. –

+0

@ColbyBradbury Вам нужно использовать метод для * отображения * даты или использовать его для всего, что касается дат? Можете ли вы использовать var как 'Date' для вашей логики' if/else', а затем разобрать строку для ее отображения? – anotherdave

0

В общем, я бы рекомендовал использовать moment.js. Это лучшая библиотека времени/времени для javascript. Посмотрите, есть ли у вас то, что вы хотите. В противном случае, если ваша проблема показывать дату другим способом, если это 1-й месяц или 21-й месяц, я бы сказал, просто используйте функцию момента(). Date(), которая возвращает дату месяца.

веселит

+1

В зависимости от ситуации плагин может быть переполнен. Но да - момент - один из хороших ... – Lix

+0

Дело в том, что я должен использовать метод «.toDateString» для удовлетворения этих требований. –

0

Если вы можете только использовать toDateString() дело с датами, вы должны сделать некоторые строки разбора для извлечения данных, которые вы желаете ...

toDateString() возвращает строку аналогично этому: "Fri Jul 19 2013". Что вы можете сделать, это разделить эту величину на символ пробела:

var date_obj = new Date(); 
var date_string = date_obj.toDateString(); 
var date_parts = date_string.split(" "); 

Теперь вы будете иметь массив, который выглядит следующим образом: ["Fri", "Jul", "19", "2013"]

Все, что вам нужно сделать отсюда экстракт третий элемент в индексе 2, чтобы получить тот же результат, что и getDate() (который возвращает именно то, что вы ищете).

Смежные вопросы