我在javascript函数中使用这段代码。 但是当我运行应用程序时,它会给出一个引用错误,即未定义本地存储。
localStorage.setItem(result.key+authAppParams.application , result.key);
为什么会这样? 为什么我不能在函数中使用它? 由于它是一个setItem,并且所有相关值都在方法内部,因此我无法全局定义本地存储。
如何避免此问题并使其有效?
答案 0 :(得分:3)
使用localStorage时,您应该首先检查它,以确保浏览器已实现它。
像这样的东西
if(window.localStorage) {
// localStorage can be used
} else {
// can't be used
}
应该在代码的早期检查它,并且只在它可用的情况下才使用它。
JS将始终在全局中查找在当前上下文中找不到的变量,因此它看起来好像归结为没有它的浏览器。
编辑像所有人都在评论,localStorage和jQuery是完全独立的