Показано с 1 по 8 из 8

Тема: Форматирование даты в JavaScript

  1. #1
    Продвинутый
    Регистрация
    17.11.2006
    Сообщений
    6,976
    Записей в дневнике
    15
    Изображения
    533

    Форматирование даты в JavaScript

    На днях перед мной стала задача отформатировать дату в JavaScript оказалось подходящих функций у самого языка нет, пришлось сделать свою, функция не идеальна, но работает на ура.

    Код:
    function formatDate(formatDate, formatString)
    {
     		var yyyy = formatDate.getFullYear();
     		var yy = yyyy.toString().substring(2);
     		var m = formatDate.getMonth() + 1;
     		var mm = m < 10 ? "0" + m : m;
     		var d = formatDate.getDate();
     		var dd = d < 10 ? "0" + d : d;
    
     		var h = formatDate.getHours();
    		var hh = h < 10 ? "0" + h : h;
    		var n = formatDate.getMinutes();
    		var nn = n < 10 ? "0" + n : n;
    		var s = formatDate.getSeconds();
    		var ss = s < 10 ? "0" + s : s;
    
    		formatString = formatString.replace(/yyyy/i, yyyy);
    		formatString = formatString.replace(/yy/i, yy);
    		formatString = formatString.replace(/mm/i, mm);
    		formatString = formatString.replace(/m/i, m);
    		formatString = formatString.replace(/dd/i, dd);
    		formatString = formatString.replace(/d/i, d);
    		formatString = formatString.replace(/hh/i, hh);
    		formatString = formatString.replace(/h/i, h);
    		formatString = formatString.replace(/nn/i, nn);
    		formatString = formatString.replace(/n/i, n);
    		formatString = formatString.replace(/ss/i, ss);
    		formatString = formatString.replace(/s/i, s);
    
    		return formatString;	
    }
    
    Date.prototype.format = function(format)
    {
    	return formatDate(this, format);
    }

  2. #2
    Junior Member
    Регистрация
    14.01.2009
    Сообщений
    8

    Re: Форматирование даты в JavaScript

    Реализовать дату на JScript легко

    function date(){
    var d=new Date();
    var m=d.getDate();
    if(m<10){m=0+m;}
    var day=d.getDate();
    if(day<10){day=0+day;}
    var y=d.getFullYear();
    var zaq=day+':'+m+':'+y;
    }

    и все

  3. #3
    Продвинутый
    Регистрация
    17.11.2006
    Сообщений
    6,976
    Записей в дневнике
    15
    Изображения
    533

    Re: Форматирование даты в JavaScript

    Ваша функция приводит текущую дату к определенному формату. Написанная мной форматирует любую дату в соответствии с шаблоном.

  4. #4
    Junior Member
    Регистрация
    14.01.2009
    Сообщений
    8

    Re: Форматирование даты в JavaScript

    Да я про часы минуты и секунды не стал писать, там принцип такой же как и с написанием дня. Необходимо только в конце самой функции прописать функцию setTimeout(название функции, и время в милисекундах), чтобы время менялось каждую секунду или минуту, как захотите. А то, как показывать время на странице, в принципе не имеет значение, это по желанию. Можно вообще написать в функции
    var d=new Date();
    document.write(d);
    и там будет полная дата, включая день недели и часовой пояс.

  5. #5
    Продвинутый
    Регистрация
    17.11.2006
    Сообщений
    6,976
    Записей в дневнике
    15
    Изображения
    533

    Re: Форматирование даты в JavaScript

    Цитата Сообщение от tim188
    Да я про часы минуты и секунды не стал писать, там принцип такой же как и с написанием дня. Необходимо только в конце самой функции прописать функцию setTimeout(название функции, и время в милисекундах), чтобы время менялось каждую секунду или минуту, как захотите. А то, как показывать время на странице, в принципе не имеет значение, это по желанию. Можно вообще написать в функции
    var d=new Date();
    document.write(d);
    и там будет полная дата, включая день недели и часовой пояс.
    к сожалению мы говорим на разных языках

    мне кажется так удобнее:

    var d=new Date();
    document.write(d.format("mm.dd.yyyy"));

  6. #6
    Junior Member
    Регистрация
    14.01.2009
    Сообщений
    8

    Re: Форматирование даты в JavaScript

    Да нет, мы с вами говорим на одном языке, просто немножко не понимаем друг друга. У меня в программе используется чистый javascript, а у вас, насколько я понял, используется библиотека prototype, я с ней совершенно не знаком. У меня каждому елементу даты присваивется своя переменная, у вас тоже самое, но немного по-другому. Для меня формат даты , что надо вывести на странице, зависит от заказчика. Я каждому елементу даты, ну там минуты или месяцы, присваиваю свою переменную, и в зависимости от того, что требует заказчик, использую то, что надо. И еще, если можно, то лучше на ты. Мне так проще.

  7. #7
    Продвинутый
    Регистрация
    17.11.2006
    Сообщений
    6,976
    Записей в дневнике
    15
    Изображения
    533

    Re: Форматирование даты в JavaScript

    Цитата Сообщение от tim188
    Да нет, мы с вами говорим на одном языке, просто немножко не понимаем друг друга. У меня в программе используется чистый javascript, а у вас, насколько я понял, используется библиотека prototype, я с ней совершенно не знаком. У меня каждому елементу даты присваивется своя переменная, у вас тоже самое, но немного по-другому. Для меня формат даты , что надо вывести на странице, зависит от заказчика. Я каждому елементу даты, ну там минуты или месяцы, присваиваю свою переменную, и в зависимости от того, что требует заказчик, использую то, что надо. И еще, если можно, то лучше на ты. Мне так проще.
    прототип это не библиотека, а базовый клас
    ООП по яваскрипту так сказать.
    Разница в том, что ваша функция жестко специфицированна, такое пишут все, то что показал я, это гибкая функция форматированя.

  8. #8
    Junior Member
    Регистрация
    14.01.2009
    Сообщений
    8

    Re: Форматирование даты в JavaScript

    Честно слово, я джаваскрипт знаю не очень, вот как дату добавить, текст какой-нибудь или класс поменять. А настолько, чтобы говорить об остальном, это я лучше помолчу и послушаю более опытных.

Похожие темы

  1. Реализация фоункции trim в JavaScript
    от BoyStav в разделе JScript
    Ответов: 0
    Последнее сообщение: 14.11.2008, 04:57

Рекомендуем

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •  

SEO by vBSEO

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94