Как упоминалось в других ответах, вы должны преобразовать входные данные из строки в число. Кроме того, всегда старайтесь поместить имя переменной в левую часть выражения (т. Е. Справа) и не переопределяйте переменную массива точек (объявленную выше цикла while) с вычисленным результатом. Здесь я объявляю локальную точечную переменную для хранения одиночного вычисленного результата. Существует несколько способов преобразования вашего ввода в строку:
Использование parseFloat (если вы хотите поддерживать десятичные входы):
var point = parseFloat(m * ( x * x ) + c * x + p);
points[y] = point;
Использование parseInt:
var point = parseInt(m * ( x * x ) + c * x + p);
points[y] = point;
Использование Number (в основном такое же, как parseInt, см. В чем разница между parseInt () и Number ()? ):
var point = Number(m * ( x * x ) + c * x + p);
points[y] = point;
В следующем примере мы удаляем потребность в локально-объявленной переменной точки путем уплотнения двух строк на один (вы можете, конечно, использовать любой из вышеперечисленных методов из числа строк в число):
points[y] = parseFloat(m * ( x * x ) + c * x + p);