Qu'est-ce que le séparateur décimal symbole en JavaScript?

Une pensée m'a frappé, j'ai écrit un bout de code JavaScript qui a traité certaines valeurs à virgule flottante. Qu'est-ce que le point décimal symbole en JavaScript? Est-il toujours .? Ou est-il de la culture spécifique? Et que dire de .toFixed() et .parseFloat()? Si je suis de traitement d'une entrée de l'utilisateur, il est susceptible d'inclure la culture locale spécifique symbole du séparateur décimal.

En fin de compte, j'aimerais écrire un code qui prend en charge les deux points décimaux dans la saisie de l'utilisateur - culture et ., mais je ne peux pas écrire un tel code si je ne sais pas ce que JavaScript attend.

Ajouté: OK, Rubens Farias suggère à regarder question similaire qui a soigné accepté réponse:

function whatDecimalSeparator() {
    var n = 1.1;
    n = n.toLocaleString().substring(1, 2);
   return n;
}

C'est gentil, cela me permet d'obtenir les paramètres régionaux du point décimal. Une étape vers la solution, sans aucun doute.

Maintenant, la partie restante serait de déterminer quel est le comportement de .parseFloat() est. Plusieurs réponses soulignent que pour virgule flottante littéraux seulement . est valide. Ne .parseFloat() agir de la même façon? Ou peut-il exiger que le local séparateur décimal dans certains navigateur? Existe-il des méthodes différentes pour l'analyse des nombres à virgule flottante ainsi? Dois-je déployer mes propres juste pour être sûr?

  • pour ce que vous faites, je voudrais examiner à l'aide de l'unaire (+) de l'opérateur au lieu de parseFloat(). Il sera beaucoup plus facile lors de la validation de la saisie. Voir ma réponse mis à jour.
InformationsquelleAutor Vilx- | 2010-01-18