JavaScript';s localStorage不';不保值
我有:JavaScript';s localStorage不';不保值,javascript,local-storage,Javascript,Local Storage,我有: setFileName()之所以有效,是因为filenamelem包含argFileName。但是每当我调用getFileName()时,它总是返回getDefaultFileName() 为什么会这样?您应该使用这种语法 储存使用 var setFileName = function(argFileName) { localStorage.fileName = argFileName; fileNameElem.value = localStorage.fileName
setFileName()
之所以有效,是因为filenamelem
包含argFileName
。但是每当我调用getFileName()
时,它总是返回getDefaultFileName()
为什么会这样?您应该使用这种语法 储存使用
var setFileName = function(argFileName)
{
localStorage.fileName = argFileName;
fileNameElem.value = localStorage.fileName;
};
var getFileName = function()
{
return localStorage.fileName ? localStorage.fileName : getDefaultFileName();
};
要从本地存储中获取
localStorage.setItem('fileName', value);
用JSFIDLE编辑,以防您想查看
请检查此项。我看不出眼前的问题,但是FWIW您的三元运算符可以替换为
return localStorage.fileName | | getDefaultFileName()
@Alnitak。好的,我改了,你的代码对我有用。您使用的浏览器是什么?根据,使用属性访问器从localStorage
进行读写是完全合法的。唯一的例外是,当想要存储一个恰好与不动产(或通过localStorage
object的原型链继承的不动产)共享名称的不动产@Alnitak时,我将其更改为“您应该使用”。出于某种原因,我只是认为语法是无效的。不管怎么说,使用set&get似乎更安全,对吧?也许更安全,但几乎肯定不是OP出现问题的原因。我正在Chrome中查看localStorage
的内容。首先,它显示指定的值,但随后快速更改为getDefaultFileName()
@mirsadhalilovic,这意味着您有其他代码覆盖了它,而这个答案实际上并没有解决您的问题
localStorage.getItem('filename');