Search the Community
Showing results for tags 'math'.
-
Здравствуйте. Я только изучаю JS и столкнулся с очень интересной проблемой, не знаю как решить. Суть: Задача была написать функцию которая принимает два параметра. 1. Массив, состоящий из чисел с дробями. 2. Метод округления "round", "ceil" или "floor". На выходе функция должна выводить этот же массив, но при этом все элементы массива, должны быть округлены с помощью указанного во втором параметре метода объекта Math. Казалось бы, что задача пустяковая и решается за одну минуту. Так оно и было бы, если бы я не решил проверить решение запустив три раза подряд написанную мной функцию для 3 разных методов. В результате я получил все три раза скругление по методу round, вместо round, ceil, floor. Скрипт по ссылке: jsfiddle Также я попытался зайти с другой стороны и написал скрипт немного иначе, получив тот же результат. Скрипт по ссылке: jsfiddle Потратив некоторое время на поиск проблемы, я дошел до того, что функция работает правильно, но только если запустить ее 1 раз, только для одного метода. Запуск только одного метода по ссылке: jsfiddle В итоге получается, что если запустить эту функцию несколько раз, то метод для Math принимается тот, который был запущен первым. Объясните пожалуйста, почему так происходит. З.Ы. На всякий случай, если ссылки будут битыми (этим сервисом пользуюсь первый раз), оставлю код в прикреплённых файлах. script.html