chrome.storage.sync.set variable key

chrome.storage.sync.set variable key

本文关键字:variable key set sync storage chrome      更新时间:2023-09-26

我正在编写一个将使用chrome storage API的chrome扩展。我正在尝试为键使用变量并将值设置为 null:

function save() {
    var item = $("#item").val();
    chrome.storage.sync.set({item:null}, function(){
        console.log("sync settings saved");
    });
}

然后,我运行以下命令以查看所有保存的数据:

chrome.storage.sync.get(null, function(items) {
    console.log(items);
});

控制台输出为:

Object {item: ""}

所以基本上它正在被设置,但不是用变量的值保存它,而是用变量名保存它。

任何想法如何让它保存变量值?

这是

JavaScript中的预期行为。这是您在对象中定义键的方式。

如果要将变量值设置为对象键,可以执行以下操作:

var item = $("#item").val();
var save = {};
save[item] = null;
chrome.storage.sync.set(save)
//...

然后save对象不会使用"item"作为键,而是使用它是值。