使用多维数组进行Stringify会得到空结果

Rob*_*vdA 2 javascript json

我有这样一个数组:

var d = new Array();
d[0] = new Array();
d[0]['item1'] = '123';
d[0]['item2'] = '456';
d[0]['item3'] = '789';
d[1] = new Array();
d[1]['item1'] = '123';
d[1]['item2'] = '456';
d[1]['item3'] = '789';
Run Code Online (Sandbox Code Playgroud)

使用console.log(JSON.stringify(d));我的控制台日志时"[[],[]]" 为什么JSON.stringify()给出一个空的结果?

这是一个jsFiddle显示我目前的情况

我看了这个.答案是一个解决方案,但我的属性名称是可变的,你可以在jsFiddle中看到.有没有办法制作属性的名称变量?像这样(显然不起作用):

var s = 'attrName';
var object = {
    s: '123'
}// The object should have an attribute named attrName
Run Code Online (Sandbox Code Playgroud)

CD.*_*D.. 5

尝试:

d[0] = {};
Run Code Online (Sandbox Code Playgroud)

代替:

d[0] = new Array();
Run Code Online (Sandbox Code Playgroud)

这种方式d[0]是一个对象而不是一个数组.

工作示例:http://jsfiddle.net/FLDfR/