dta*_*her 5 javascript google-chrome google-chrome-extension
我正在编写将使用chrome存储API的chrome扩展程序.我试图使用键的变量并将值设置为null:
function save() {
var item = $("#item").val();
chrome.storage.sync.set({item:null}, function(){
console.log("sync settings saved");
});
}
Run Code Online (Sandbox Code Playgroud)
然后我运行以下内容来查看所有已保存的数据:
chrome.storage.sync.get(null, function(items) {
console.log(items);
});
Run Code Online (Sandbox Code Playgroud)
控制台输出是:
Object {item: ""}
Run Code Online (Sandbox Code Playgroud)
所以基本上它是设置的,但不是用变量的值保存它,而是用变量名保存它.
任何想法如何让它来保存变量值?
这是JavaScript中的预期行为.这是您在对象中定义键的方式.
如果要将变量值设置为对象键,可以执行以下操作:
var item = $("#item").val();
var save = {};
save[item] = null;
chrome.storage.sync.set(save)
//...
Run Code Online (Sandbox Code Playgroud)
然后save对象不会使用"item"作为键,但它的值.