gpt4 book ai didi

javascript - JSON.stringify 不适用于普通的 Javascript 数组

转载 作者:IT老高 更新时间:2023-10-28 12:44:52 24 4
gpt4 key购买 nike

我一定是在这里遗漏了一些东西,但是下面的代码 (Fiddle) 返回一个空字符串:

var test = new Array();
test['a'] = 'test';
test['b'] = 'test b';
var json = JSON.stringify(test);
alert(json);

对这个数组进行 JSON 处理的正确方法是什么?

最佳答案

JavaScript 数组旨在保存具有 数字 索引的数据。您可以向它们添加命名属性,因为 an array is a type of object (当您想要存储有关包含正常、有序、数字索引数据的数组的元数据时,这可能很有用),但这不是它们的设计目的。

JSON 数组数据类型不能在数组上有命名键。

当您将 JavaScript 数组传递给 JSON.stringify 时,命名属性将被忽略。

如果您想要命名属性,请使用对象,而不是数组。

const test = {}; // Object
test.a = 'test';
test.b = []; // Array
test.b.push('item');
test.b.push('item2');
test.b.push('item3');
test.b.item4 = "A value"; // Ignored by JSON.stringify
const json = JSON.stringify(test);
console.log(json);

关于javascript - JSON.stringify 不适用于普通的 Javascript 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16196338/

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