Problem mit einem Array in einem Objekt
Hi,
ich habe folgende Klasse in JavaScript:
Diese Klasse rufe ich zwei mal auf und fülle das erste Objekt mit Inhalt:
Die Ausgabe von test1 ist wie erwartet:
Jedoch ändert sich bei test2 testObj nicht, wobei es mit testStr oder testObjInner funktioniert:
Wieso verhält sich testObj anders als testStr und testObjInner?
Vielen Dank im Voraus!
Grüße
Max
Hi,
ich habe folgende Klasse in JavaScript:
Javascript:
var test = function() {
this.testObjInner = new Array();
this.testStrInner = '';
};
test.prototype.testObj = new Array();
test.prototype.testStr = '';
Diese Klasse rufe ich zwei mal auf und fülle das erste Objekt mit Inhalt:
Javascript:
var test1 = new test;
test1.testObjInner.push('foo');
test1.testObj.push('foo');
test1.testStrInner = 'foo';
test1.testStr = 'foo';
console.log(test1.testObjInner, test1.testObj, test1.testStrInner, test1.testStr);
var test2 = new test;
console.log(test2.testObjInner, test2.testObj, test2.testStrInner, test2.testStr);
Die Ausgabe von test1 ist wie erwartet:
Code:
[ 'foo' ] [ 'foo' ] 'foo' 'foo'
Jedoch ändert sich bei test2 testObj nicht, wobei es mit testStr oder testObjInner funktioniert:
Code:
[] [ 'foo' ] '' ''
Wieso verhält sich testObj anders als testStr und testObjInner?
Vielen Dank im Voraus!
Grüße
Max
Zuletzt bearbeitet von einem Moderator: