gpt4 book ai didi

javascript - 从 sessionStorage 添加和检索

转载 作者:行者123 更新时间:2023-11-30 12:31:03 25 4
gpt4 key购买 nike

我正在为 sessionStorage 使用 Angulars $window 服务。我需要做的是将服务 promise 的成功添加到 sessionStorage 中,以便它可以在整个应用程序中使用。

这是我一直在尝试的:

$window.sessionStorage.setItem('promoImages',success);

success 是从服务返回的对象数组,结构如下:

[{
promotion: {},
url: 'images/image1.png'
},
{},
{}];

因此,此结构应通过上面的行分配给 promoImages。但是,当我像这样打印值时:

 $log.debug('Promo from session:'+JSON.stringify($window.sessionStorage.promoImages));

我得到以下信息:

Promo from session:"[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]"

如果我对成功数组和 session 数组执行相同的操作,我会得到不同的结果 - session 数组返回 undefined - 为什么?

 $log.debug('Success:'+JSON.stringify(success[0].url));
// Returns url above
$log.debug('Promo from session:'+JSON.stringify($window.sessionStorage.promoImages[0].url));
// Returns undefined

我在 sessionStorage 方面做错了什么? sessionStorage 只能添加到创建它的同一个文件中吗? (我不这么认为)。

谢谢

编辑

感谢下面的人的回答 - 但我认为值得指出的是,在我的对象上使用 stringify 函数时,实际上是在对象中添加了正斜杠来代替空格...

最佳答案

您只能在 SessionStorage 中存储字符串。在调用 setItem()

之前将您的对象字符串化

来自 MDN :

Storage.setItem

Parameters

key name

A DOMString containing the name of the key you want to create/update.

key value

A DOMString containing the value you want to give the key you are creating/updating.

关于javascript - 从 sessionStorage 添加和检索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27692043/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com