Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   добавить элемент в массив, принадлежащий объекту (https://javascript.ru/forum/dom-window/59379-dobavit-ehlement-v-massiv-prinadlezhashhijj-obektu.html)

gorda 08.11.2015 21:01

добавить элемент в массив, принадлежащий объекту
 
функция addElem принимает объект, куда вставлять переменную item, и group - название свойства класса Image, в которое нужно этот item добавить.
То есть, если current_tags[0] содержит три пустых массива, а я вызываю addElem(current_tags[0], year, "2015"), нужно найти current_tags[0].year и в конец этого массива добавить "2015".

не знаю, в чем ошибка, push не добавляет, обращение через элемент с индексом length тоже ничего не дает. подскажите, пожалуйста, как правильно записать значение
function Image(name, category, year, author){
    this.name = name;
    this.category= category;
    this.year= year;
    this.author= author;
	return this;
} ;

var current_tags=[]
for(i=0;i<3;i++){	
	current_tags[i] = new Image("",[],[],[])
	delete current_tags[i].name;
}

function addElem(obj, group, item) {
		for(var key in obj){
			if(key==group)	
			{
				obj.key[obj.key.length]=item;	
			}
		}
	}

gorda 08.11.2015 21:24

разобралась...
function Image(name, category, year, author){
    this.name = name;
    this.category= category;
    this.year= year;
    this.author= author;
	
	this.addElem = function(group, item){
		for(var key in this){
			if(key==group)	
			{
				
				this[group].push(item);
				alert(this[group]);
			}
		}
	}
	return this;
} ;

Mess4me 08.11.2015 21:27

var b = 6;
    var obj = {
        a: [2,4,5]
    };

    for( var key in obj){
        obj[key].push(b)
    }

    alert(obj.a);


Часовой пояс GMT +3, время: 06:00.