35

私は次のものを持っています:

var gridData = {};
var TestRow = {
   "name": "xx",
   "description": "xx",
   "subjectId": 15
                };
gridData.push(TestRow)

gridData オブジェクトにプッシュしたばかりの新しいデータのインデックス番号を確認するにはどうすればよいですか?

4

3 に答える 3

3

まず、 find-indexof-element-in-jquery-array に似ていると言います

とにかく、それを見事に見@jfriend00@PSCoder答えたので、Find Indexの代替案を伝えたかったのですが、

配列が次のようになっていると仮定します:-

var gridData = [];//{} Curly braces will define it as object type, push operations can take place with respect to Array's

その中に2つ以上のデータがありますArray

var TestRow = {
        "name": "xx",
        "description": "xx",
        "subjectId": 15
    };
    var TestRow1 = {
        "name": "xx1",
        "description": "xx1",
        "subjectId": 151
    };

さて、あなたがやったように、これら2つのデータをプッシュします。プッシュされた要素のインデックスを見つけるには、次を使用できます.indexOf.inArray

var indexOfTestRow0 = gridData.indexOf(TestRow);// it returns the index of the element if it exists, and -1 if it doesn't.
    var indexOfTestRow1 = gridData.indexOf(TestRow1);// it returns the index of the element if it exists, and -1 if it doesn't.

    //Search for a specified value within an array and return its index (or -1 if not found).
    var indx1 = jQuery.inArray(TestRow, gridData);
    var indx2 = jQuery.inArray(TestRow1, gridData);

ものをテストすることを考えたので、以下のような非常に簡単なことを試しました:-

<head>
    <title></title>
    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
</head>
<script>
    $(document).ready(function () {
        var gridData = [];//{} Curly braces will define it as Boject type, push operations can take place with respect to Array's
        var TestRow = {
            "name": "xx",
            "description": "xx",
            "subjectId": 15
        };
        var TestRow1 = {
            "name": "xx1",
            "description": "xx1",
            "subjectId": 151
        };
        gridData.push(TestRow);
        gridData.push(TestRow1);
        console.log(gridData);

        var indexOfTestRow0 = gridData.indexOf(TestRow);// it returns the index of the element if it exists, and -1 if it doesn't.
        var indexOfTestRow1 = gridData.indexOf(TestRow1);// it returns the index of the element if it exists, and -1 if it doesn't.

        //Search for a specified value within an array and return its index (or -1 if not found).
        var indx1 = jQuery.inArray(TestRow, gridData);
        var indx2 = jQuery.inArray(TestRow1, gridData);

        console.log(indexOfTestRow0);
        console.log(indexOfTestRow1);

        console.log(indx1);
        console.log(indx2);
    });


</script>
于 2013-04-22T05:41:55.463 に答える