【发布时间】:2019-10-10 02:35:05
【问题描述】:
好吧,假设我在我的 HTML 页面中输入了这两个值:20、30。
我有这两个变量,我从我的 HTML 页面获取值,它工作正常,所以 BrugerFugt=20 和 BrugerTemp=30:
BrugerFugt = document.getElementById("40").value;
BrugerTemp = document.getElementById("41").value;
然后我把这两个变量和 setItem 一起使用。
sessionStorage.setItem("BF", JSON.stringify(BrugerFugt));
sessionStorage.setItem("BT", JSON.stringify(BrugerTemp));
此时如果我使用 console.log(JSON.stringify(BrugerFugt)),它应该打印 20。
现在我想把它发送到我的服务器,所以我调用这个变量:
serverConnection.send(JSON.stringify(SetBruger));
我已经定义了这个变量,我要发送到我的服务器。
var SetBruger = {
command: "BrugerIndtastTF",
brugerT: sessionStorage.getItem("BT"),
brugerF: sessionStorage.getItem("BF")
}
然后我尝试打印我的 JSON.stringify(SetBruger),但它打印的是我在 HTML 网络上输入的最后一个值,而不是新值。假设在我输入 20 和 30 之前,我输入了 40 和 60 之类的东西。然后当我在输入 20 和 30 之后打印我的 SetBruger 时,我在终端中得到了这个打印。
test: {"command":"BrugerIndtastTF","brugerT":"\"40\"","brugerF":"\"60\""}
好像问题出现了,当我 JSON.stringify(SetBruger) 时?
【问题讨论】:
-
所有这些事情在您的程序流程中的何处/何时发生?比如,你有没有可能在把那个东西发送到服务器之前不调用 setStorage ?或者,您可能在某处创建了 SetBruger 变量,并期望它稍后会自动更新(它不会)。
标签: javascript json parsing storage stringify