Temporary-Script-Storage

Sets a maximum age (minimum one day) for script storage values, after which they are deleted

Dieses Skript sollte nicht direkt installiert werden. Es handelt sich hier um eine Bibliothek für andere Skripte, welche über folgenden Befehl in den Metadaten eines Skriptes eingebunden wird // @require https://update.greasyfork.org/scripts/562172/1881822/Temporary-Script-Storage.js

Du musst eine Erweiterung wie Tampermonkey, Greasemonkey oder Violentmonkey installieren, um dieses Skript zu installieren.

You will need to install an extension such as Tampermonkey to install this script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

You will need to install an extension such as Tampermonkey or Userscripts to install this script.

You will need to install an extension such as Tampermonkey to install this script.

Sie müssten eine Skript Manager Erweiterung installieren damit sie dieses Skript installieren können

(Ich habe schon ein Skript Manager, Lass mich es installieren!)

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install an extension such as Stylus to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

You will need to install a user style manager extension to install this style.

(I already have a user style manager, let me install it!)

Autor
JasonMel
Version
1.0.4
Erstellt am
11.01.2026
Letzte Aktualisierung
21.07.2026
Größe
31,2 KB
Lizenz
MIT (https://mit-license.org/)

Speicher, der über eine Instanz dieser Klasse gesetzt und abgerufen wird, existiert nur so lange wie die Lebensdauer, die Sie im Konstruktor festlegen, muss aber mindestens ein Tag sein. Der Standard sind 30 Tage. Nach dieser Zeit läuft er ab und wird gelöscht, wenn sweepExpiredEntries() aufgerufen wird, was Sie mit setInterval() planen können.

Diese Bibliothek hat keine Auswirkungen auf Skriptspeicher, der direkt durch setValue() von GM auf die übliche Weise gesetzt wird. Solcher Speicher verhält sich normal.

Beispiel für die Verwendung:

const persistentStorage = new TTLStorage();
await persistentStorage.ready();
setInterval(() => persistentStorage.sweepExpiredEntries(), 1000 * 60 * 60 * 24);

try { 
  await persistentStorage.set("key1", "hello"); // throws
  const msg = persistentStorage.get("key1");    // fast memory read
  await persistentStorage.delete("key1");       // throws
} catch {}

Darüber hinaus muss jedes Skript, das diese Bibliothek verwendet, die folgenden Metadaten enthalten:

// @grant GM.getValue
// @grant GM.setValue
// @grant GM.deleteValue
// @grant GM.listValues
// @grant GM.info

Dies ist erforderlich, da das Festlegen dessen, was jede Bibliothek in ihren eigenen Metadaten benötigt, nicht ausreicht. Das Skript auf oberster Ebene muss die erforderlichen @requires und @grants für alle seine Abhängigkeiten bereitstellen.