Skip to content

Instantly share code, notes, and snippets.

@MushuLeDragon
Created January 25, 2019 11:06
Show Gist options
  • Save MushuLeDragon/4e3613f6fbf3a794811c246a7a0b7973 to your computer and use it in GitHub Desktop.
Save MushuLeDragon/4e3613f6fbf3a794811c246a7a0b7973 to your computer and use it in GitHub Desktop.
Petite fonction de séparation des milliers en JavaScript
function gestionNumerique(idChamps)
{
//Initialisation variable
result = ""
depart = 0
//Recuperation de la valeur de mon champs text
Valeur = document.getElementById(idChamps).value
//On separe les entiers des decimaux
var arrayOfStrings = Valeur.split(',')
//Valeur represente nos entiers
Valeur = arrayOfStrings[0]
//On supprime tout les espaces qui ont pu etre mis en place precedement
Valeur = Valeur.replace(/ /g,"")
//On traite les cas avec 1 ou 2 chiffres avant l'ajout du 1ier espace
if (Valeur.length % 3 == 2)
{
result = Valeur.substr(0, 2);
depart = 2
}else if(Valeur.length % 3 == 1)
{
result = Valeur.substr(0, 1);
depart = 1
}
//la variable depart represente notre avancement dans le traitement
reste = (Valeur.length - depart)
//On determine ici le nombre d'espace a ajouter selon la longueur qui reste a faire
nbrBoucle = reste / 3
//On parcours en ajoutant un espace tout les 3 caracteres
for (i = 0; i < nbrBoucle; i++)
{
//Dans le cas ou result est encore vide, on empeche l'ajout d'espace (ex 100 000)
if(result != "")
{
result = result + " "
}
result = result + Valeur.substr(depart, 3);
depart = depart +3
}
//On recupere les decimaux mis de coté qu'on ajoute a la suite (en limitant a 2 chiffres)
if(arrayOfStrings[1] != undefined)
{
decimal = arrayOfStrings[1].substr(0, 2);
result = result+","+decimal
//Sinon on definis par defaut les 2 zero pour representer nos centimes.
}else{
result = result+",00"
}
//On renvois la valeur ainsi determiner dans le champs texte.
document.getElementById(idChamps).value = result
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment