編集:私が達成しようとしていたことについて少し混乱していたようです。説明に時間を割いてくださった方、ありがとうございました。
Jquery/Javascriptで2次元配列を作成しようとしています。私は適切な量の検索、テスト、およびより多くの検索を行いましたが、私にとって本当に意味のある解決策を見つけることができません。 (それはすでに非常に長い週でした...)
以下は、アレイの望ましいフォーマットです。
{"product":[{"attribute":"value","attribute":"value"}]}
これは2D配列ではなく、オブジェクトです。また、製品配列にはオブジェクトが1つだけ含まれています。私はあなたがこのようなものが必要だと思います:
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で2次元配列を作成することはできません。配列は1次元しか持つことができません。ギザギザの配列、つまり配列の配列は、2次元配列の代わりに使用されます。
例:
var a = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
表示する望ましい形式は、2次元配列でもギザギザの配列でもありません。代わりに、オブジェクトの配列であるプロパティを含むオブジェクトです。ただし、配列内のオブジェクトには同じ名前の2つのプロパティがあるため、配列内に2つのオブジェクトがあることを意味していると思います。
var o = {
product: [
{ attribute: "value" },
{ attribute: "value" }
]
};
上記のようなリテラルオブジェクトを使用して、そのようなオブジェクトを作成するか、後でプロパティと配列項目を追加して作成できます。
var o = {};
o.product = [];
o.product.Push({ attribute: "value" });
o.product.Push({ attribute: "value" });
$(".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++
});
これを試して:
{"product":[ [{"attribute":"value"},{"attribute":"value"}]]}
これが私の解決策です。
var optionArr = []
optionArr = {"product": [{"id":1, "name":"abc"}, {"name":"value"}]}
var data = optionArr['product'][0]['name']
alert(data)