GM.setValue
установит значение на неопределенный срок и будет ограничено сценарием, но будет работать, если ваш сценарий выполняется в нескольких доменах.
window.localStorage
установит значение на неопределенный срок и будет относиться к домену страницы, поэтому не будет работать в разных доменах, но будет работать, если вам нужно несколько сценариев GreaseMonkey для доступа к одному значению.
window.sessionStorage
будет устанавливать значение только тогда, когда окно или вкладка открыты и ограничены только этим окном или вкладкой для этого домена.
document.cookie
может устанавливать значение неопределенно или только в то время, когдабраузер открыт и может быть распределен по дочерним доменам, одному домену, пути или отдельной странице.
Это основные механизмы на стороне клиента для хранения значений при загрузке страниц, предназначенные дляэта цель.Однако есть другой способ, который иногда возможен (если сама страница не использует его), а также может быть весьма полезен;window.name
.
window.name
относится к окну или вкладке, но также будет работать в разных доменах.Если вам нужно сохранить несколько значений, то они могут быть помещены в объект, и вы можете сохранить строку JSON объекта.Например window.name = JSON.stringify(obj)