Сколько вам лет javascript

Возраст | PHP и JavaScript

Фраза «мы работаем с 1880 года» звучит менее впечатляюще, чем «мы работаем более ». Можно, конечно, из года в год 1 января менять цифру «», а можно написать короткий скрипт, который сам рассчитает правильное количество лет.

Правильное склонение по-русски: «год», «года», «лет» в JavaScript

  

Сравнение дат в формате «год месяц день»

 

Вычисление возраста по дате рождения

  

Подсчёт разницы лет

  

Определить количество дней между двумя датами

  

Как посчитать разницу между датами в годах на PHP

«Год», «года», «лет» в зависимости от числа

 echo YearTextArg(date('Y')-1880); ?>

Рассчитать возраст на PHP

29/02/1880') ->diff(new DateTime('now')) ->y; echo $age; ?>

Возраст со словом «год», «года» или «лет»

29/02/1880') ->diff(new DateTime('now')) ->y; function YearTextArg($year) < $m = substr($year,-1,1); $l = substr($year,-2,2); return $year. ' ' .((($m==1)&&($l!=11))?'год':((($m==2)&&($l!=12)||($m==3)&&($l!=13)||($m==4)&&($l!=14))?'года':'лет')); >echo YearTextArg($age); ?>

11 комментариев:

Анонимный Спасибо, отличные скрипты)) NMitra Благодарю за отзыв! Александр Шаповал Вопрос по «Возраст со словом «год», «года» или «лет»» — последний пример: я, использую этот пример для вычисления возраст юзера в CMS Joomla. Как в строку «RETURN», вместо русских: ‘год’, ‘года’ и ‘лет’, вставить языковую переменную Joomla. Языковая переменная, выглядит вот так:

Заранее благодарю за ответ Александр Шаповал Не пропустило языковую переменную. Дублирую снова: языковая переменная, выглядит вот так: echo JText::_( ‘COM_CCK_LANG_VAR’ ); NMitra А зачем? Тогда нужно три переменных.
Для того, чтобы написать код в комментариях, пожалуйста используйте http://shpargalkablog.ru/2010/12/napisat-kod-tekstom.html Александр Шаповал Ок. Понял.

Так как все же ПРАВИЛЬНО вставить эту переменную вместо ‘год’ — эту: , вместо ‘года’ — эту: и вместо ‘лет’ — эту: ? NMitra Не, вместо ‘год’ пишите сразу JText::_( ‘COM_CCK_LANG_VAR1’ )
Я сама php знаю поскольку постольку, просто он похож на JS Александр Шаповал NMitra, спасибо! Заработало!

Ну и соответственно, нужно задать значения языковым переменным в lang-LANG.overide.ini Vegan Boom Спасибо! В очередной раз нашла в этом блоге нужную информацию.

А подскажите, пожалуйста ещё и это. Как изменить этот код в JavaScript, если хочу, чтобы отражалось следующее:

Возраст автора на момент написания статьи: . лет, . месяцев.
Vegan Boom Дополнение к предыдущему моему комментарию.

Важно, чтобы я могла это вставить в шаблон сообщений. И у каждого конкретного поста ничего бы не нужно было исправлять. Один универсальный код для всех постов. NMitra Дополнила статью примером

Источник

Формат данных и подсчет возраста в JavaScript

redaktsiya-itvdn

03.11.2015

4109

advertisement advertisement

Введение

Как веб-разработчик, Вы можете знать, что форматирование данных на серверном языке – не очень сложная задача. Достаточно базового понимания языка и того, что Вам нужно для реализации, и вот – у Вас есть хорошо отформатированный объект даты и времени. Например, следующий код С# является хорошо отформатированным и может предоставить нужный Вам объект даты и времени.

var dateOfBirth = new DateTime(1995, 08, 29); // My date of birth

var formatted = dateOfBirth.ToString( «MMMM dd, yyyy» );

// Would hold: August 29, 1995

В выше написанном коде мы предусмотрели формат данных, который нам нужен, и код, что обеспечит ожидаемый результат. Впрочем, делать это в JavaScript весьма трудно, потому как в JavaScript нет переопределенного метода ToString, который может преобразовать объект даты и времени в должным образом форматированное значение.

advertisement advertisement

Тем не менее, объекты Date в JavaScript используют методы, с помощью которых можно извлечь значения месяца, дня или года. Мы будем их использовать, чтобы сгенерировать форматированный string для объекта date. Также заметим, что в JavaScript объект даты и времени является числом, которое отображается как количество миллисекунд от 1-го января 1970 г. Поэтому, чтобы не писать свой собственный код для подсчета месяцев и дат, можете использовать встроенные функции getMonth, getDate и др. чтобы получить нужные значения. В нашей статье мы покажем Вам, как написать код и как правильно форматировать запись string в объект даты и времени.

Объект даты и времени в Javascript

Объект даты и времени (Date) в JavaScript намного компактнее, чем в других языках программирования. Он не обеспечивает множество функций и особенностей. Это просто конструктор, который принимает число миллисекунд или значение строки, что представляет объект даты и времени в пределах от 1 января 1970 года до сегодняшнего дня (каким бы он ни был). Вы легко можете создать его экземпляр, используя следующий код

var date = Date.now(); // current date time

var date = new Date(); // new instance; default

var date = new Date( ‘string-notation-of-datetime’ );

// Any date time upto 1 January 1970 from Now.

Тема связана со специальностями:

Теперь давайте поработаем с данным исходным кодом и посмотрим, что JavaScript может нам предложить.

Написание веб-приложения

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

Примечание: мы использовали Bootstrap в качестве стиля.

Контроль после рендеринга

Контроль после редеринга

Это то, что у нас есть для макета, а теперь давайте обратимся ко входным данным пользователей. Мы должны найти указанную пользователем строку даты и времени, а также рассчитать по ней возраст.

var dateValue = new Date($( ‘input’ ).val()); // Get the value

// Now comes the stringification. Following code does that.

var date = getMonth(dateValue.getMonth()) + » » + dateValue.getDate() + «, » + dateValue.getFullYear();

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

Примечание: date.getMonth() при возврате значения начинает отсчет от 0.

Источник

Взаимодействие с пользователем: alert, prompt, confirm

Материал на этой странице устарел, поэтому скрыт из оглавления сайта.

Более новая информация по этой теме находится на странице https://learn.javascript.ru/alert-prompt-confirm.

В этом разделе мы рассмотрим базовые UI операции: alert , prompt и confirm , которые позволяют работать с данными, полученными от пользователя.

alert

alert выводит на экран окно с сообщением и приостанавливает выполнение скрипта, пока пользователь не нажмёт «ОК».

Окно сообщения, которое выводится, является модальным окном. Слово «модальное» означает, что посетитель не может взаимодействовать со страницей, нажимать другие кнопки и т.п., пока не разберётся с окном. В данном случае – пока не нажмёт на «OK».

prompt

Функция prompt принимает два аргумента:

result = prompt(title, default);

Она выводит модальное окно с заголовком title , полем для ввода текста, заполненным строкой по умолчанию default и кнопками OK/CANCEL.

Пользователь должен либо что-то ввести и нажать OK, либо отменить ввод кликом на CANCEL или нажатием Esc на клавиатуре.

Вызов prompt возвращает то, что ввёл посетитель – строку или специальное значение null , если ввод отменён.

Единственный браузер, который не возвращает null при отмене ввода – это Safari. При отсутствии ввода он возвращает пустую строку. Предположительно, это ошибка в браузере.

Если нам важен этот браузер, то пустую строку нужно обрабатывать точно так же, как и null , т.е. считать отменой ввода.

Как и в случае с alert , окно prompt модальное.

var years = prompt('Сколько вам лет?', 100); alert('Вам ' + years + ' лет!')

Второй параметр может отсутствовать. Однако при этом IE вставит в диалог значение по умолчанию «undefined» .

Запустите этот код в IE, чтобы понять о чём речь:

Поэтому рекомендуется всегда указывать второй аргумент:

confirm

confirm выводит окно с вопросом question с двумя кнопками: OK и CANCEL.

Результатом будет true при нажатии OK и false – при CANCEL( Esc ).

var isAdmin = confirm("Вы - администратор?"); alert( isAdmin );

Особенности встроенных функций

Конкретное место, где выводится модальное окно с вопросом – обычно это центр браузера, и внешний вид окна выбирает браузер. Разработчик не может на это влиять.

С одной стороны – это недостаток, так как нельзя вывести окно в своём, особо красивом, дизайне.

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

Это самый простой способ вывести сообщение или получить информацию от посетителя. Поэтому их используют в тех случаях, когда простота важна, а всякие «красивости» особой роли не играют.

Резюме

  • alert выводит сообщение.
  • prompt выводит сообщение и ждёт, пока пользователь введёт текст, а затем возвращает введённое значение или null , если ввод отменён (CANCEL/ Esc ).
  • confirm выводит сообщение и ждёт, пока пользователь нажмёт «OK» или «CANCEL» и возвращает true/false .

Источник

Читайте также:  To convert a value to a number in JavaScript
Оцените статью