1

詳細がたくさんあります。それらを配列内にスタックしたいのですが、それはできますか?

detailObj = {

    textDetail: "hello this is my text!",
    id: "tooltip_businessDetails"

};

var idArray[0] = detailObg;
4

7 に答える 7

7

はい:

var idArray = [
    {
        textDetail: "hello this is my text!",
        id: "tooltip_businessDetails"
    },
    {
        textDetail: "another",
        id: "anotherid"
    },
    // ...and so on
];

または、それらを指す変数が既にある場合:

var idArray = [detailObj, anotherDetailObj, yetAnotherDetailObj];

配列の作成後に動的に行うこともできます。

var idArray = [];
idArray.push(detailObj);
idArray.push({
    textDetail: "another",
    id: "anotherid"
});
idArray.push(yetAnotheretailObj);

そして、少し変更するだけで、あなたが試みた方法でそれを行うことができます:

var idArray = [];
idArray[0] = detailObj;
idArray[1] = anotherDetailObj;

配列要素を設定するたびに、配列のlengthプロパティは、まだ設定されていない場合は、設定した要素よりも 1 つ大きくなるように更新されます (つまり、 を設定するidArray[2]と、 にlengthなります3)。

JavaScript 配列はsparseであるため、 throughidArray[52]のエントリを作成せずに に割り当てることができることに注意してください。実際、JavaScript 配列は実際には配列ではありません051

于 2012-06-19T14:26:44.363 に答える
3

このことを行う代わりに、以下のコードを使用します

var arr = [];

arr.push(detailobj);
于 2012-06-19T14:26:46.933 に答える
2

オブジェクト指向のアプローチを使用できます。

var detail = function(id, text) {
    this.id = id;
    this.text = text;
};

​var arr = [];
arr.push(new detail("myid", "mytext"));

console.log(arr);
于 2012-06-19T14:27:39.833 に答える
0

それらを配列内にスタックしたいのですが、それはできますか?

はい、できます。JavaScriptの配列は柔軟性があり、オブジェクトも保持できます。

例:

var myArr = [];
myArr.push(detailObj);
于 2012-06-19T14:26:12.767 に答える
0

例えば:

var idArray = [detailObj1, detailObj2];
于 2012-06-19T14:26:37.840 に答える
0

別のもの:

var myArray = new Array();
myArray.push(<your object>)
于 2012-06-19T14:28:46.553 に答える
0
detailObj = {

    textDetail: "hello this is my text!",
    id: "tooltip_businessDetails"

};

var array = [];
for(var key in detailObj) {
   array.push(detailObj[key]);
}
alert(array[0]);
于 2012-06-19T14:29:01.003 に答える