Помогите найти ошибку в js

Подскажите, в чем ошибся. Нужно взять число из элемента span, удалить все пробелы, прибавить другое число и снова поставить пробелы (разделители разрядов).

jQuery(document).ready(function() {
  setInterval(function() {
    var text = jQuery('span').text().split(' ').join('');

    text = Number(text) + 1;
    text = text.toLocaleString('ru-RU');

    jQuery('span').text(text);
  }, 1000);
});

https://jsfiddle.net/sdjtzxao/

На втором шаге в span записывается строка "Не число".


Ответы (1 шт):

Автор решения: Alexey Ten

text.toLocaleString('ru-RU') вставляет не обычный пробел, а неразрывный (который   в HTML). Поэтому split(' ') его не видит.

Проще просто поменять split(' ').join('') на replace(/[^0-9]/g, '') который оставит в строке только цифры.

var text = jQuery('span').text().replace(/[^0-9]/g, '');

Либо хранить число отдельно от его представления. Например в атрибутах data-... https://jsfiddle.net/byzeatmh/

→ Ссылка