При форматировании численных значений общей проблемой является форматирование в соответствии с милитами. Уже есть много решений этой проблемы в Интернете. Вы также можете использовать метод массива.
Function formatnumber (num) {if (isnan (num)) {throw new TypeError ("num - это не число"); } var Groups = (/((/-/+]?) (/d*) (/./ d+)?/g) .exec ("+num), mask = группы [1], // знак бита integers = (группы [2] ||" ") .split (" "), // integer part decimal = группы [3] || "", // Десятичная часть остается = integers.length % 3; var temp = integers.reduce (function (предыдущая Value, currentValue, index) {if (index + 1 === остается || (index + 1 - останки) % 3 === 0) {возврат предыдущий Value + CurrentValue + ",";} else {return Purvalue + currentValue;}}, "). вернуть маску + темп + десятичный десятичный; }Метод уменьшения массива не поддерживается ниже IE9, но мы можем реализовать метод уменьшения, основанный на ECMASCRIPT 3.
В JavaScript параметр соответствия шаблона метода замены строки может быть регулярным выражением в дополнение к строке. Ниже приведен конкретный код для использования метода string.prototype.replace для реализации форматирования тысячи квадрат:
Function formatnumber (num) {if (isnan (num)) {throw new TypeError ("num - это не число"); } return ("" + num) .Replace (/(/d {1,3}) (? = (/d {3}) + (?: $ | /.))/ g, "$ 1,"); }(/d {1,3}) - это группа захвата, на которую можно ссылаться на обратном направлении, используя 1 доллар. ? = (/d {3})+(?: $ |/.) - это прямое утверждение, указывающее, что совпадение между 1 и 3 числами должно следовать 3 числа, но не содержат последние 3 числа или 3 числа и десятичные точки.
Два простых метода реализации для численного форматирования мелитов JavaScript в приведенной выше статье - все это контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.