gpt4 book ai didi

javascript - 在 javascript 中存储数组 for javascript

转载 作者:行者123 更新时间:2023-11-28 16:28:58 24 4
gpt4 key购买 nike

我看过很多关于如何从 javascript 序列化数组以发送到 PHP 文件的文章,然后 PHP 文件将其反序列化回数组,等等...

我的 javascript 中有一个大型嵌套关联数组,我需要将其保存到字符串中,并在稍后检索并转换回 javascript 中的字符串。没有其他程序会触及这个。如果序列化数据是人类可读的,这可能会很方便,但这绝对不是必需的。

有一个中间 PHP 文件,但它只有 4 行长:它所做的只是将字符串保存到文件中,并在请求时将其发送回来。我对在 PHP 中解析数组不感兴趣。

将 JavaScript 中的多重嵌套关联数组转换为字符串并再次转换回来的最快、最简单的方法是什么?

最佳答案

JSON是 JavaScript 语言的子集,广泛用作 JavaScript 以及越来越多的其他语言的序列化格式。它是人类可读的,只是大多数实现删除了可选的空格,这使得它变得更加困难。

现代浏览器具有开箱即用的 JSON 支持,对于较旧的浏览器,您需要包含类似 json2.js 的库。 .

要进行序列化,请使用 JSON.stringify 方法。

var myObject = {a: 2, b: 3, c: [1, 2, 3]};
var serialized = JSON.stringify(myObject);
// serialized == "{"a":2,"b":3,"c":[1,2,3]}"

要反序列化,请使用 JSON.parse 方法。

var recovered = JSON.parse(serialized);
<小时/>

Well, I have constructed my array like: var data = new Array(); data["John"] = "John Smith";

啊,这是一个问题。 JavaScript Array 并不意味着用作关联数组,而是用作普通的零索引非关联数组。您可以将属性(键/值对)分配给任何 JavaScript 对象,这就是您的代码可以正常工作的原因,但您的对象是 Array 的事实可能会导致问题。如果您只是创建一个 new Object() ,事情应该会更好。

关于javascript - 在 javascript 中存储数组 for javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6867460/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com