Javascript document.cookie = «ключ = значение» добавляется вместо замены

1

В этом синтаксисе добавлен новый ключ в cookie в браузере:

document.cookie = "key=value";

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

Как достигается это поведение строки, т.е. превышение работы по умолчанию?

Теги:
string
cookies

1 ответ

1

Так всегда работали файлы cookie в JavaScript.

document.cookie = "key=value";
document.cookie; // "key=value"

document.cookie = "key=value2";
document.cookie; // "key=value2"

document.cookie = "key2=valuex";
document.cookie; // "key=value2;key2=valuex"

Исходный key только перезаписывается, если он указан снова. Файлы cookie являются странными и противоречивыми, поскольку независимо от того, сколько файлов cookie для домена установлено, существует только одно значение для document.cookie - единственная строка

  • 0
    Мой вопрос о вашей последней операции document.cookie = "key2 = valuex"; , Интуитивно понятно, что после этой операции document.cookie; должен выводить только «key2 = valuex», т.е. заменять старое значение вместо добавления в строку. Как это достигается?
  • 0
    Если он использует уникальный ключ, что и в этом примере, он добавит его как «новый» cookie (новая часть строки cookie). Чтобы перезаписать существующий «cookie» (т.е. существующий ключ в строке cookie), ключ должен быть таким же. В приведенном выше примере второе назначение для document.cookie перезаписывает первое, потому что ключ тот же

Ещё вопросы

Сообщество Overcoder
Наверх
Меню