<MyRusakov.ru />

React JS, Redux, ES2015 с Нуля до Гуру

React JS, Redux, ES2015 с Нуля до Гуру

Данный курс - это обширный курс по JavaScript и фреймворку React, который позволит Вам с нуля создавать мощные современные, динамические JavaScript-приложения.

Вы узнаете о тонкостях работы с "профессиональным" JavaScript, а так же узнаете о нововведениях в его новый стандарт ES2015, Вы узнаете, как организовать профессиональное окружение для FrontEnd, изучите профессиональный фреймворк - ReactJS.

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

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Работа с cookie через JavaScript

Работа с cookie через JavaScript

Иногда требуется работа с cookie через JavaScript. Например, cookie может быть альтернативным вариантом обмена данными между PHP и JavaScript. Допустим, JavaScript записывает в cookie пользователя его текущее время на компьютере (то есть его местное время), а PHP эти данные считывает и учитывает смещение относительно серверного времени. А теперь давайте разберём, как работать с cookie через JavaScript.

Единственное, что есть в JavaScript для работы с cookie - это свойство cookie объекта document:

<script type="text/javascript">
  alert(document.cookie);
</script>

В результате запуска этого кода выведутся все cookie от данного сайта, причём в определённом формате. Выглядит это примерно так: "name=123; login=456". На что здесь стоит обратить внимание? На то, что все cookie имеют, разумеется, имя и значение, а сами cookie разделены друг с другом точкой с запятой и пробелом.

Зная этот формат, Вы можете легко вытащить значение нужной переменной.

Чтобы добавить через JavaScript ещё одну переменную, надо написать следующий код:

<script type="text/javascript">
  document.cookie = "new=5";
</script>

Обратите внимание, что именно "=", а не "+=". В данном случае, Вы не стираете все существующие cookie, а добавляете новую переменную.

Что касается удаления cookie, то здесь можно использовать тот факт, что имеется возможность указать время жизни cookie. И если указать, что она должна была закончиться год назад, то cookie будет немедленно удалена.

Чтобы у Вас было полное представления о работе с cookie через JavaScript, показываю код всех 3 функций для управления cookie, а также пример их использования:

<script type="text/javascript">
  function setCookie(name, value) {
    document.cookie = name + "=" + value;
  }
  function getCookie(name) {
    var r = document.cookie.match("(^|;) ?" + name + "=([^;]*)(;|$)");
    if (r) return r[2];
    else return "";
  }
  function deleteCookie(name) {
    var date = new Date(); // Берём текущую дату
    date.setTime(date.getTime() - 1); // Возвращаемся в "прошлое"
    document.cookie = name += "=; expires=" + date.toGMTString(); // Устанавливаем cookie пустое значение и срок действия до прошедшего уже времени
  }
  setCookie("firstname", "Вася"); // Устанавливаем cookie
  alert(getCookie("firstname")); // Выводим cookie
  deleteCookie("firstname"); // Удаляем cookie
  alert(getCookie("firstname")); // Убеждаемся, что ничего не осталось
</script>

Вот такую простейшую библиотеку Вы можете использовать при работе с cookie через JavaScript.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

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

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (3):

ura ura 20.04.2013 16:49:11

Спасибо за эту новость!

Ответить

АлександрНик АлександрНик 14.01.2014 11:22:02

Проблема с функцией deleteCookie(), если кука создавалась к примеру на странице site_name/page1.html , а удаляется на site_name/page2.html то кука не удаляется функция function createCookie(name,value,days) { if (days) { var date = new Date(); date.setTime(date.getTime()+(days*24*60*60*1000)); var expires = "; expires="+date.toGMTString(); } else var expires = ""; document.cookie = name+"="+value+expires+"; path=/"; } решает проблему

Ответить

Critical Critical 30.01.2016 15:50:26

Здравствуйте. Если задать и вывести пару куков (document.write(document.cookie)), то будет результат: "name=value; name2=value2". Скажите, пожалуйста как обращаться до конкретного кука и отдельно до его значения ?

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.