编辑:看来我有点混淆了自己的目标。感谢那些花时间解释的人。
我正在尝试在Jquery/Javascript中创建一个二维数组。我已经进行了相当多的搜索、测试和更多的搜索,但是我无法找到真正让我理解的解决方案。(这已经是一个非常漫长的一周了....)
下面是数组的期望格式。
{"product":[{"attribute":"value","attribute":"value"}]}
编辑:看来我有点混淆了自己的目标。感谢那些花时间解释的人。
我正在尝试在Jquery/Javascript中创建一个二维数组。我已经进行了相当多的搜索、测试和更多的搜索,但是我无法找到真正让我理解的解决方案。(这已经是一个非常漫长的一周了....)
下面是数组的期望格式。
{"product":[{"attribute":"value","attribute":"value"}]}
这不是一个二维数组,而是一个对象。另外,您的产品数组仅包含一个对象。我认为您需要像这样的东西:
var obj = {};
obj.product = [];
for(var i=0; i < someObj.length; i++) {
obj.product.push[{"attribute": someObj[i]}]
}
这将在 product
属性中生成一个数组:
{"product":[{"attribute":"value"}, {"attribute":"value"}]}
在Javascript中,你不能创建二维数组,数组只能有一个维度。而是使用交错数组,即数组的数组,来代替二维数组。
例如:
var a = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
您展示的所需格式既不是二维数组,也不是锯齿型数组,而是包含一个属性为对象数组的对象。但是,数组中的对象具有相同名称的两个属性,因此我认为,您是指带有两个对象的数组:
var o = {
product: [
{ attribute: "value" },
{ attribute: "value" }
]
};
你可以使用类似上面的字面对象来创建一个对象,或者在之后添加属性和数组项来创建它:var o = {};
o.product = [];
o.product.push({ attribute: "value" });
o.product.push({ attribute: "value" });
试试这个:
{"product":[ [{"attribute":"value"},{"attribute":"value"}]]}
这是我的解决方案。
var optionArr = []
optionArr = {"product": [{"id":1, "name":"abc"}, {"name":"value"}]}
var data = optionArr['product'][0]['name']
alert(data)
$(".adddiv").each(function(){
tasks = [];
$(".subtasktask"+len).each(function() {
var raw = $(".subtasktask"+len).children().size();
for(var l =0;l
datas.push(milestone);
alert("now show json milestone array : ");
alert(milestone.month + ":" + milestone.title +":" + milestone.task. );
len++
});