Ich habe ein eindimensionales Feld von einer Reihe von Zahlen:Return Zweidimensionale Array von Single-Dimensional Array in JavaScript
var x = ['9493-4937-288383-8473', '4838-38403-8484', '9384-3848-4978-4944', '3920-2108-2845-1904'];
Ich versuche, die Summe der Ziffern jeder Zahl daneben einfügen zu schaffen eine zweidimensionale Anordnung, so dass der Ausgang ist:
[ [ '9493-4937-288383-8473', 96 ],
[ '4838-38403-8484', 65 ],
[ '9384-3848-4978-4944', 96 ],
[ '3920-2108-2845-1904', 58 ] ]
Leider ist mein Code:
for (var i = 0; i < x.length; i ++) {
var y = x[i].replace(/[-)(]/g,'');
var sum = 0;
var z = y;
while (z > 0) {
sum = sum + z % 10;
z = Math.floor(z/10);
}
var xWithSum = [x[i]];
xWithSum.push(sum);
console.log(xWithSum);
}
Ergebnisse in der folgenden Ausgabe statt:
[ '9493-4937-288383-8473', 96 ]
[ '4838-38403-8484', 65 ]
[ '9384-3848-4978-4944', 96 ]
[ '3920-2108-2845-1904', 58 ]
Das heißt, ich bin mit vier separaten zweidimensionalen Anordnungen enden eher als eine zweidimensionale Anordnung mit vier Punkten.
Wird mir bitte jemand den Fehler meiner (Neuling) JavaScript-Möglichkeiten zeigen?
Sollte die Summe der ersten Nummer nicht 102 sein? –
drücken Sie einfach Ihr Ergebnis in ein neues Array. – Craicerjack