Problème substr fin de chaîne

Résolu/Fermé
Utilisateur anonyme - 9 juin 2015 à 12:09
blackduck Messages postés 817 Date d'inscription mercredi 20 février 2013 Statut Membre Dernière intervention 24 novembre 2018 - 9 juin 2015 à 14:52
Bonjour,

Je viens vers vous aujourd'hui parce que j'ai un beau petit problème.
C'est simple, j'ai une chaîne de caractère que je dois découpé en trois.

chaine = 12345671945612332;
val1 = chaine.substr(0,7); donc 1234567
val 2 = chaine.substr(7,1); donc 1
val 3 = chaine.substr(8,9); donc 945612332

et bien mon problème est là... la valeur trois chez moi n'est pas égale à "945612332" mais "945612334". Le dernier caractère c'est pas le bon...

Si quelque qu'un à une idée, merci d'avance ;)
A voir également:

2 réponses

Utilisateur anonyme
9 juin 2015 à 14:45
Bonjour

C'est probablement lié au fait que la représentation des nombres n'est pas d'une précision infinie, mais normalement avec les valeurs que tu donnes ça devrait marcher.
Pour t'en dire plus, il faudrait que tu donnes ton vrai code, car celui que tu donnes est faux : tu initialises "chaine" avec un nombre (et non pas une chaine) donc chaine.substr donne une erreur.
0
blackduck Messages postés 817 Date d'inscription mercredi 20 février 2013 Statut Membre Dernière intervention 24 novembre 2018 96
9 juin 2015 à 14:52
Salut,

J'avoue que c'est assez étrange, j'ai testé ce code de mon côté :
chaine = "12345671945612332"; 
val3 = chaine.substr(8,9);  
alert(val3);

et ça me retourne bien 945612332
0