Wie verwende ich chrome.storage in einer Chrome-Erweiterung, wobei der Wert einer Variablen als Schlüsselname verwendet wird?

Ich versuche, den lokalen Speicher / Synchronisierungsspeicher (chrome.storage) von Chrome für eine Erweiterung zu verwenden, um Dateneinträge für viele verschiedene Einträge zu speichern. Ich kann nicht scheinen, die korrekte Syntax dafür herauszufinden. Ich möchte die Informationen nur einfach als Zeichenfolgen speichern. Ich habe gesucht und kann noch nichts finden, was funktioniert.

Das funktioniert momentan bei mir mit der normalen localStorage-Technik:

var imageName = "Red Cat 5";
var myDescription = "A nice kitty";

localStorage.setItem (imageName, myDescription);
console.log(localStorage[imageName]);

Das funktioniert und ich kann den Schlüssel aus einer vorhandenen Variablen setzen. Wie kann ich das mit chrome.storage.local.set machen? Ich habe das ohne Erfolg versucht:

var imageName = "Red Cat 5";
var myDescription = "A nice kitty";

chrome.storage.local.set({imageName: myDescription}, function()
{console.log('success?');});

chrome.storage.local.set({imageName: myDescription}, function()
{chrome.storage.local.get(imageName, function(r){console.log(r.imageName);});});

Jede Hilfe wird sehr geschätzt. Vielen Dank!

----- UPDATE UNTEN -----

Danke für die Erklärung mit dem Code. Ich hoffe es hilft jemand anderem. Hierzu scheint es nur wenige Informationen zu geben! Ihre Antwort hat mir dabei geholfen:

var nameOne = "al";
var nameTwo = "bob";
var nameThree = "carl";
var nameFour = "dan";

var dataObj = {};

dataObj[nameOne] = nameTwo;
dataObj[nameThree] = nameFour;

storage.set(dataObj);

storage.get(dataObj, function(result)
{
console.log(result[nameOne]);
console.log(result[nameThree]);
});

Antworten auf die Frage(2)

Ihre Antwort auf die Frage