2017-04-06 3 views
-2

Ich habe eine Produktlinie, die auf einer 90-Tage-Basis mit der niedrigsten Nennwert 1 pro Monat verkauft wird. Wie lange das Produkt dauert, hängt vom Verbrauch des Benutzers ab.Rund um 30 mit JavaScript

Einige Beispiele:

Wenn das Produkt 28 Tage dauert, dann muß ich mein JavaScript, um die Anzahl der Einheiten 2 pro Monat verkauft zu ändern.

Wenn das Produkt 35 Tage hält, lassen Sie die Anzahl verkaufter Einheiten als 1 pro Monat.

Wenn das Produkt 61 Tage hält, lassen Sie die Anzahl verkaufter Einheiten als 1 pro Monat.

Wenn Produkt 10 Tage dauert, ändern Sie auf 3 pro Monat.

var unitsPerMonth = 0; 
var numberOfDays = productsAmount/userConsumption; 
// example 1500/52 per day = product will last 28 days, so round unitsPerMonth to 2 
+0

Sie müssen den Algorithmus besser erklären. So wie es aussieht, gibt es keine Logik, um zu bestimmen, warum 10 zu 3, 28 zu zwei und 35 zu eins geht. Basierend auf den 30-Tage-Monaten sollten 10 und 28 beide auf 3 gehen, da sie beide weniger als 30 Tage sind. – RobG

Antwort

1

Ich glaube, du bist für Math.ceil suchen, die eine Zahl auf eine ganze Zahl aufgerundet.

var numberOfDays = productsAmount/userConsumption; 
var salesPer30Days = 30/numberOfDays; 
var unitsPerMonth = Math.ceil(salesPer30Days); 
+1

Funktioniert perfekt, danke :) – abracassabra