javascript - атрибуты - js css
Как добавить целочисленное значение с javascript(jquery) в значение, возвращающее строку? (7)
Parse int - это инструмент, который вы должны использовать здесь, но, как и любой инструмент, он должен использоваться правильно. При использовании parseInt вы всегда должны использовать параметр radix для обеспечения правильной базы
var currentValue = parseInt($("#replies").text(),10);
У меня есть простой блок html, например:
<span id="replies">8</span>
Используя jquery, я пытаюсь добавить 1 к значению (8).
var currentValue = $("#replies").text();
var newValue = currentValue + 1;
$("replies").text(newValue);
То, что происходит, выглядит следующим образом:
81
тогда
811
а не 9, что будет правильным ответом. Что я делаю не так?
parseInt не работал для меня в IE. Поэтому я просто использовал + для переменной, которую вы хотите как целое.
var currentValue = $("#replies").text();
var newValue = +currentValue + 1;
$("replies").text(newValue);
Вы можете умножить переменную на 1, чтобы заставить JavaScript преобразовать переменную в число для вас, а затем добавить ее в другое значение. Это работает, потому что умножение не перегружается по мере добавления. Некоторые могут сказать, что это менее понятно, чем parseInt, но это способ сделать это, и он еще не упоминался.
Параметр parseInt () заставит его быть целочисленным по типу или будет NaN (а не числом), если он не может выполнить преобразование.
var currentValue = parseInt($("#replies").text(),10);
Второй параметр (radix) гарантирует, что он анализируется как десятичное число.
Целое число преобразуется в строку, а не наоборот. Вы хотите:
var newValue = parseInt(currentValue) + 1
Что касается восьмого неправильного толкования .js - я просто использовал это ...
parseInt(parseFloat(nv))
и после тестирования с ведущими нулями возвращался каждый раз с правильным представлением.
надеюсь это поможет.
var month = new Date().getMonth();
var newmon = month + 1;
$('#month').html((newmon < 10 ? '0' : '') + newmon );
Я просто исправил ваш вопрос месяца, getMonth array начинался с 0 до 11.