我正在编写将使用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: ""}
所以基本上它已被设置,但不是用变量的值保存它,而是用变量名保存它。
有任何想法如何让它来保存变量值吗?
答案 0 :(得分:6)
这是JavaScript中的预期行为。这是你在Objects中定义键的方法。
如果要将变量值设置为对象键,可以执行以下操作:
var item = $("#item").val();
var save = {};
save[item] = null;
chrome.storage.sync.set(save)
//...
然后save
对象不会使用“item”作为键,但它是值。