const cookie = new Vue({ computed: { content: { get () { const ret = {} const cookieList = document.cookie.split('; ') for (const data of cookieList) { const [key, value] = data.split('=') ret[key] = value } return ret }, set (obj) { for (const key in obj) { document.cookie = `${key}=${obj[key].toString()}` } } } } }) cookie.content = {a:1, b:2} console.log(cookie.content)