【发布时间】:2012-10-13 12:21:32
【问题描述】:
我正在使用 localStorage 开发 Sencha Touch 2 应用程序。
我像这样从本地存储中获取值:
var localStore = Ext.getStore('localStore');
localStore.getAt(0).data.name1 //get the value for key 'name1'
但是在第一次访问时本地存储是空的。如何检查密钥是否存在? 当我这样做时:
if(localStore.data.name1 === null)
我明白了:
Uncaught TypeError: Cannot read property 'name1' of undefined
【问题讨论】:
-
真的吗? bennadel.com/blog/…
-
我觉得还是有区别的,因为我想用的是sencha touch的功能,而不是原生的javascript函数...
-
无论如何,这里的问题是你做了两件不同的事情。在第一种情况下(localStore.getAt(0).data.name1),您访问的是存储的第一条记录的数据,然后是该记录的“name1”属性,这是有意义的。但是然后 (localStore.data.name1) 您尝试直接访问商店的数据并且此属性不存在。因此 localStore.data.name1 返回 undefined。
标签: javascript sencha-touch extjs local-storage