В Javascript я хочу представить номер пользователю в том формате, который они понимают, чтобы редактировать его. Следовательно, системе необходимо будет проанализировать международный номер.парсинг локализованных строк номера javascript
Это потому, что, если они находятся во Франции, они, вероятно, предпочтут изменить число «1.000.000,5», тогда как если они находятся в Австралии, они, вероятно, предпочтут изменить число «1 000 000,5» или "1,000,000.5". (Чтобы уточнить сферу действия вопроса: мой код не должен знать об отдельных правилах той или иной локали. Использует ли какая-либо страна в качестве десятичной точки? Я не знаю, и я не хочу знаю.)
Современный Javascript предоставляет API Intl.NumberFormat, но он, похоже, имеет дело с производством чисел, а не для их разбора.
Как разобрать локализованный номер?
это выглядит как [этот вопрос] (http://stackoverflow.com/questions/4951738/culture-sensitive-parsefloat-function-in-javascript), а также [этот вопрос] (HTTP : //stackoverflow.com/questions/12694455/javascript-parsefloat-in-different-cultures). Если вам не нравится какой-либо из этих ответов, вам может понадобиться решить проблему дома. Если вы это сделаете, обязательно поставьте его на github. Кажется, это общая проблема! – chester
Возможно, вы захотите проверить [* Globalize.js *] (https://github.com/globalizejs/globalize#where-to-use-it), в котором есть число форматирования и парсера (между прочим). Также см. [* Интернационализация (форматирование чисел «num.toLocaleString()»), не работающая для chrome *] (http://stackoverflow.com/questions/8906567/internationalizationnumber-formatting-num-tolocalestring-not-working-for-c/37161329 # 37161329). – RobG