Я пытаюсь сделать графический калькулятор в javascript. Сегодня я столкнулся с проблемой, которую я не знаю, как исправить. Вот код.Лучшая система округления для javascript
var step = 0.5;
for (var i = -size; i <= size; i+= step){
if(given!=null){
func = eval(given);
console.log("x: " + x + " y: " + func);
} else {
func = -(x);
}
points[i+size] = new THREE.Vector3(x,0,func);
x+=step;
}
Вы можете игнорировать материал Vector, мой вопрос касается неточности. Когда я делаю шаг менее 0,5, javascript будет делать ошибки. Это то, что происходит, когда я изменяю шаг до 0,05.
x:-14 y: 0.27090578830786904
x: -13.95 y: 0.36565262028262135
x: -13.899999999999999 y: 0.456745972144196
Слишком много, но я остановился на -13, потому что здесь проблема начинается. Как вы можете видеть, я хочу, чтобы он вернулся -13.90, но это не сработало. Я попытался округлить его, но он перестанет работать снова, когда х положителен. Пожалуйста помоги. Заранее спасибо.