chrome.storage.local.set usando um nome de chave variável

Em uma extensão do Google Chrome, quero usarchrome.storage.local (em oposição a localStorage) porque:

Com pares de valor-chave, o valor pode ser qualquer objeto (em oposição à string somente)Alterações no modelo de dados usando setterstorage.set pode acionar um ouvinte de evento

Usandostorage.setComo posso ter um nome de chave variável?

Nota: Se eu não usar o setter, eu posso fazerstorage[v1], mas as alterações no objeto não acionarão o ouvinte de evento.

var storage = chrome.storage.local;
var v1 = 'k1';

storage.set({v1:'s1'});

storage.get(v1,function(result){
    console.log(v1,result);
    //console output = k1 {}
});
storage.get('v1',function(result){
    console.log(result);
    //console output = {v1:'s1'}
});

questionAnswers(2)

yourAnswerToTheQuestion