Ich habe eine Funktion erstellt, die eine Zahl in imperial-Einheiten in ein div übernimmt und diesen Wert in metrische Einheiten in einem anderen div konvertiert. Da ich für js relativ neu bin, merke ich jetzt, dass ein Komma-Separator der 1000. Stelle nicht Standard ist. Ich habe versucht, viele der Lösungen (viele von ihnen) anzuwenden, die ich gefunden habe, aber keiner meiner Bedürfnisse oder hat funktioniert. Einfach gesagt, ich suche nur nach divs ausgegebenen Zahlen haben Kommas, die den tausendsten Platz trennen. Letztendlich sind diese Zahlen Höhenwerte, ausgedrückt in Fuß und Metern. Jeder Einblick würde sehr geschätzt werden ... danke!Fügen Sie ein Komma an der Stelle der Tausendstel in der ausgegebenen Zahl
Hier ist mein Code:
<body>
<div id="feet" onload="calculateMeter()">2120</div>
<div id="meter"></div>
<script>
var feet = document.getElementById('feet');
var meter = document.getElementById('meter');
function calculateMeter() {
if (feet.innerHTML > 0) {
meter.innerHTML = (feet.innerHTML * 0.3048).toFixed(1);
feet.toString();
feet = feet.innerHTML.replace(/(\d)(\d{3})\,/, "$1,$2.");
}
}
calculateMeter();
</script>
</body>
Es ist [eine neue DOM-API namens Intl] (https: // Entwickler. mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/NumberFormat) für die Formatierung von Zahlen und anderen Dingen je nach Benutzergebietsschema, kann es Ihnen helfen – aarosil
Wie ich schon sagte, ich habe viele Lösungen, diese eine recherchiert enthalten, ohne Erfolg. Bitte helfen Sie. –
Die Probleme scheinen zu sein, dass Sie nicht wissen, wie man den Inhalt des HTML aktualisiert? Was ist der Zweck von 'feet.toString();'? Warum vergeben Sie 'feet'? Möchten Sie stattdessen 'feet.innerHTML = feet.innerHTML.replace (...)'? –