Uncaught TypeError: Невозможно установить свойство '0' из неопределенного - Javascript - PullRequest
0 голосов
/ 08 сентября 2018

Я получаю эту ошибку "Невозможно установить свойство '0' из неопределенного"

 var arrItems = {
    'product1': [],
    'product2': [],
    'product3': []
};

var temArr = {};
var dataFor = "";

function fnAddItem(elm, itemInd, rem) {

    if (elm != "" && elm != undefined) {
        var _name = $(elm).attr("data-name");
        var _id = $(elm).attr("data-id");
        var _in = $(elm).attr("data-index");
        itemInd = _in;

        *arrItems[dataFor][_in] = {
            'name': _name,
            'id': _id,
            'index': _in
        };*
        console.log(arrItems[dataFor][_in]);
    }

    var strHtml = "";

    $.each(arrItems[dataFor], function(key, value) {
        if (value['name'] != undefined || value['name'] != null)
            strHtml += '<div onclick="fnRemoveItem(this,0,\'' + dataFor + '\');" class="__selected_item" data-remove="' + value['index'] + '"><span>' + (value['index'] == 1 ? value['index'] : "") + value['name'] + (value['index'] == 3 ? value['index'] : "") + '</span><span class="x">&times;</span></div>';
        console.log(strHtml);
    });
}

1 Ответ

0 голосов
/ 08 сентября 2018

Итак, похоже, вы не определили никакого значения для dataFor. В коде значение, которое вы получаете для arrItems[dataFor], равно undefined, потому что, поскольку dataFor='', то в основном вы делаете arrItems[''], которого не существует.

dataFor должно быть установлено на одно из 3 значений в объекте arrItems, чтобы код работал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...