Почему один и тот же идентификатор повторяется для всех элементов

#jquery

#jquery

Вопрос:

Может кто-нибудь, пожалуйста, скажите мне, почему один и тот же идентификатор печатается для всех элементов??

   <script type="text/javascript">
                    var undefined = "something";
                 var obj = new Object();

                 var responseinner = [{
                     "id": "59",
                     "has_topping": "1",
                     "price": "75"
                 }, {
                     "id": "60",
                     "has_topping": "1",
                     "price": "75"
                 }];


                 Object.size = function (obj) {
                     var size = 0,
                         key;
                     for (key in obj) {
                         if (obj.hasOwnProperty(key)) size  ;
                     }
                     return size;
                 };


                 $(document).ready(function () {
                     var size = Object.size(responseinner[0]);
                     for (var i = 0; i < size; i  ) {
                         var v_item_id = responseinner[0].id;
                         alert(v_item_id);
                     }
                 });
    </script>
  

Комментарии:

1. Какой результат вы ожидаете? Какова цель кода?

2. «Почему один и тот же идентификатор повторяется для всех элементов» , потому что вы всегда обращаетесь к одному и тому же значению : responseinner[0].id .

Ответ №1:

Согласно вашему коду, responseinner это массив, состоящий из объектов. Таким образом, мы можем выполнить итерацию напрямую и получить желаемый результат из объектов.

Попробуйте,

 for (var i = 0; i < responseinner.length; i  ) {
   var v_item_id = responseinner[i].id;
   alert(v_item_id);
}
  

ДЕМОНСТРАЦИЯ

Комментарии:

1. @PreethiJain Рад помочь ..!