Как указал PointedEars, здесь вы добавляете строки вместе.Оператор +
работает как со строками, так и с числами.Если любая из сторон уравнения является строкой, две части объединяются , если обе являются числами, только тогда они добавлены .
var str = "3.3";
var num1 = 1.1;
var num2 = 1.2;
str + str; // String: "3.33.3"
str + num1; // String: "3.31.1"
num1 + num2; // Number: 2.3
Тогда,когда вы умножаете вашу строку, результат преобразуется в число, однако, в вашем случае, потому что ваша строка является чем-то вроде «3.33.3», то есть недопустимым числом, и, следовательно, результатом является NaN
"3.33.3" * 2 // NaN
Ответ в первую очередь - убедиться, что вы работаете с числами.Измените все места, в которых вы определяете числовую строку, на действительное число:
var lease_sorting_stapling255 = 25.88;
Или, если значения поступают из вашей формы, возможно, вам придется проанализировать их в число.Для этого вы можете использовать parseInt
или parseFloat
в зависимости от того, хотите ли вы использовать десятичные разряды или нет.
parseFloat("25.88"); // 25.88
parseInt("25.88", 10); // 25
Второй аргумент parseInt очень важен, поскольку он определяет базу для числа.Без него число может быть проанализировано как восьмеричное или шестнадцатеричное.
parseInt("007"); // 7
parseInt("008"); // 8
parseInt("009"); // 9
parseInt("010"); // 8 !!
parseInt("010", 10); // 10