Почему не передается переменная?
Потому что в литерале объекта вы указываете непосредственно имя свойства (строка 'name' в данном случае). Сделайте так:chrome.storage.local.set({[name]: data});Вычисляемые имена свойств
Вот так нужноfunction save(name, data) {
    chrome.storage.local.set({[name]: data});
}
иначе name у вас не динамическое название свойства, а просто 'name'