jQuery:在每个循环中将对象添加到数组不起作用

jQuery: Adding objects to arrays in each loops not working

单击某个按钮时,我正在遍历 DOM 个元素。我已将 class finish-proc 附加到按钮,因此单击时将激活此功能:

<script>
    $(document).on('click', '.finish-proc', function () {
        var communities = [];

        var $this, $thisDay, input, inputDay, text, textDay, obj, objDay;

        $('.panel-default').each(function (i) {
            var maxPeople = '.' + $(this).attr('data-community') + '-max-people';
            var dayInfoRow = '.' + $(this).attr('data-community') + '-day-info';
            obj = {};
            obj["maxPeople"] = $(maxPeople).val();

            var daysArrayInLoop = [];

            $(dayInfoRow).each(function (j) {
                var objDay = {};

                var dayString = '.' + $(this).attr('data-community') + '-day-' + (j + 1);
                var dayStringStart = '.' + $(this).attr('data-community') + '-day-' + (j + 1) + '-start';
                var dayStringEnd = '.' + $(this).attr('data-community') + '-day-' + (j + 1) + '-end';

                objDay["dayString"] = $(dayString).val();
                objDay["dayStringStart"] = $(dayStringStart).val();
                objDay["dayStringEnd"] = $(dayStringEnd).val();

                daysArrayInLoop.push(objDay);
            }

            obj["dayArray"] = daysArrayInLoop;

            communities.push(obj);
        }
   }
</script>

此代码在线中断:

daysArrayInLoop.push(objDay);

出现错误:

daysArrayInLoop.push is not a function

谁能告诉我这是为什么?

EDIT - 我尝试将 var daysArrayInLoop = []; 更改为 var daysArrayInLoop = {};,仍然出现相同的错误

尝试此代码在推入对象后定义数组

var daysArrayInLoop = new Array();
    daysArrayInLoop.push(obj);