• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

[FRAGE] Umgang mit Arrays

doomsweb

New member
Hallo zusammen,

ich habe eine HTML Tabelle, die mit einigen Informationen gefüllt ist.
In der ersten Spalte habe ich als Überschrift "Mitarbeiter" und in der zweiten Spalte "Gehalt".

MitarbeiterGehalt
Hans8000
Franz5000
Dieter4000
Wenn ich auf die Überschrift "Mitarbeiter" klicke soll ein Array mit allen Mitarbeitern angelegt werden:
HTML:
var mitarbeiter=[];
            $('#table_id tbody tr td:nth-child(1)').each( function(){
               mitarbeiter.push( $(this).text() );
            });

console.log(laender)

Die einzelnen Gehälter packe ich auch in ein Array:

HTML:
var gehaelter=[];
            $('#table_id tbody tr td:nth-child(2)').each( function(){
               gehaelter.push( $(this).text() );
            });
console.log(items);

Nun habe ich folgende Arrays:
mitarbeiter = ["Hans", "Franz", "Dieter"]
gehaelter = [8000, 5000, 4000]

Ich möchte nun ein drittes Array anlegen, welches die Daten wie folgt speichert:
result = [['Hans', 8000], ['Franz', 5000], ['Dieter', 4000]]

Ich habe mir auch schon folgende Lösung aus dem Internet herausgesucht:
HTML:
var lstOut = ['', '', ''];
 
[["a", "b", "c"], ["A", "B", "C"], ["1", "2", "3"]].forEach(
  function (a) {
    [0, 1, 2].forEach(
      function (i) {
        // side-effect on an array outside the function
        lstOut[i] += a[i];
      }
    );
  }
);
 
// lstOut --> ["aA1", "bB2", "cC3"]

Leider komme ich hiermit nicht auf das gewünschte Ergebnis.

Kann mir einer von euch auf die Sprünge helfen?

Vielen Dank im Voraus.
 
Zuletzt bearbeitet von einem Moderator:
Geht so ist aber nicht JQuery

HTML:
<script>

var mitarbeiter = ["Hans", "Franz", "Dieter"];
var gehaelter = [8000, 5000, 4000];

var gesArr = [];
var gesObj = {};
for(var i=0;i< mitarbeiter.length;i++)
{
 gesArr[i] =[mitarbeiter[i],gehaelter[i]];
 gesObj[mitarbeiter[i]] = gehaelter[i];
}
console.log('ausgabe  Array');
for(var i in gesArr){
console.log(gesArr[i]);
}
console.log('ausgabe  Objekt');
console.log(gesObj.Hans+'\n'+gesObj.Franz);


</script>
 
Ich würde da ja ein Array aus Objekten machen...
Code:
var mitarbeiter = ["Hans", "Franz", "Dieter"];
var gehaelter = [8000, 5000, 4000];

var gesArray = [];
mitarbeiter.forEach(function(name, i){
	gesArray.push({
		name: name,
		gehalt: gehaelter[i] || 0
	});
});
console.log(gesArray);
- aber das würde ich gleich direkt aus der Tabelle extrahieren.
 
Zurück
Oben