Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以像在Javascript对象中一样在localStorage中存储整数值,并在不进行类型转换的情况下提取整数值?_Javascript_Html_Local Storage - Fatal编程技术网

是否可以像在Javascript对象中一样在localStorage中存储整数值,并在不进行类型转换的情况下提取整数值?

是否可以像在Javascript对象中一样在localStorage中存储整数值,并在不进行类型转换的情况下提取整数值?,javascript,html,local-storage,Javascript,Html,Local Storage,当我将整数值分配给localStorage项时 localStorage.setItem('a',1) 并检查其类型 typeof(localStorage.a) "string" 它返回字符串,我可以将其键入int供我使用 parseInt(localStorage.a) 我的问题是,是否可以像我在不进行类型转换的情况下对Javascript对象所做的那样,在localStorage中存储整数值 a={}; a.number=1; typeof(a.number) "number" 我

当我将整数值分配给localStorage项时

localStorage.setItem('a',1)
并检查其类型

typeof(localStorage.a)
"string"
它返回字符串,我可以将其键入int供我使用

parseInt(localStorage.a)
我的问题是,是否可以像我在不进行类型转换的情况下对Javascript对象所做的那样,在localStorage中存储整数值

a={};
a.number=1;
typeof(a.number)
"number"
我的问题是,是否可以像我在不进行类型转换的情况下对Javascript对象所做的那样,在localStorage中存储整数值

a={};
a.number=1;
typeof(a.number)
"number"
没有

存储对象是简单的键值存储,与对象类似,但它们在页面加载过程中保持不变。键可以是字符串或整数,但值始终是字符串


实际上,如果我们同意解析与类型转换不同,您可以:

let val = 42;
localStorage.answer = JSON.stringify(val);
let saved = JSON.parse(localStorage.answer);
console.log( saved === val ); // true
因为过度保护的堆栈代码段不允许本地存储


为了简单起见,您应该始终将您在localStorage中保存的内容字符串化为JSON,这样您就不必考虑您正在保存/检索的内容,并且可以避免保存
“[对象对象]”

您可以使用以下方法以数字格式存储:

localStorage.setItem('object', JSON.stringify({
  //Insert Number(value)
  number: Number(1)
}));

// After get item
var object = localStorage.getItem('object');
console.log(JSON.parse(object));

LocalStorage只能存储字符串值。这不是类型转换,而是转换。JavaScript没有类型转换(因为JavaScript没有类型化变量)。这意味着每次我都需要对其进行类型转换以进行数学计算?是的(假设您不能对字符串本身进行计算,您可能不能,甚至更可能不应该这样做)如果我有一个名为x的局部变量,它的值为1.54,我将把它作为x*100(154)存储在本地存储器中,然后当我从本地存储器中读取它时,我将读取它并按100进行设置。这就是我可以将数字保留在点之后的方法。即使你不直接将值解析为int,JSON是一个字符串,当你解析对象时,你解析它的值。JSON知道,这个特定的值是一个整数,会自动解析为int,但它仍然会解析。我在代码中进行了测试,wentI没有说,它不工作,我只是说它不满足不转换的要求。啊,是的,我理解,你的观点是完美的。我将把这个答案留在这里,以防像我这样的人在寻找某种意义上的东西,这就是我的情况!谢谢你澄清:)没问题:)我很高兴,我能表达我的观点