JSFiddle - React, Tailwind, and code Playground

by Lestrae

HTML

<button id='cookie' onclick="setCookie('user', 'John', {secure: true, 'max-age': 3600});">save</button>

<button onclick='checkCookie()'>check</button>

JavaScript

function setCookie(name, value, options = {}) {

  options = {
    path: '/',
    // при необходимости добавьте другие значения по умолчанию
    ...options
  };

  if (options.expires instanceof Date) {
    options.expires = options.expires.toUTCString();
  }

  let updatedCookie = encodeURIComponent(name) + "=" + encodeURIComponent(value);

  for (let optionKey in options) {
    updatedCookie += "; " + optionKey;
    let optionValue = options[optionKey];
    if (optionValue !== true) {
      updatedCookie += "=" + optionValue;
    }
  }

  document.cookie = updatedCookie;
}

// Пример использования:
setCookie('user', 'John', {secure: true, 'max-age': 3600});

function checkCookie() {
console.log(document.cookie)}