WinJS.Application.sessionState真正存储的内容

时间:2012-12-04 04:05:08

标签: windows-8 microsoft-metro winjs

在我的Windows应用商店应用中,我将数据直接存储在sessionState对象中,因此我不需要稍后移动数据。在一种情况下,我存储一个对象,该对象具有在包含范围内声明的变量的访问器方法,如下所示:

(function ()
{
    var a = [];
    var index = -1;

    WinJS.Application.sessionState.data = 
    {
        add: function (item)
        {
            index = a.length;
            a.push(item);
        },
        currentItem: function ()
        {
            return a[index];
        }
    };
})();

我的问题是sessionState对象是否会存储aindex,因为它们的范围是引用的,因为它们实际上并不存在。

1 个答案:

答案 0 :(得分:3)

您可以使用“数据”操作“a”和“索引”,直到您的应用首次暂停。当您的应用程序暂停时,存储在sessionState对象中的任何数据都会自动序列化到磁盘。功能将被删除。恢复后,我们丢失了2个函数“add”和“currentItem”。

查看更多:http://msdn.microsoft.com/en-us/library/windows/apps/hh440965.aspx