Комментарии 6
намного интереснее было бы привести варианты с использованием массивов и множеств, получится не только нагляднее и короче, но и быстрее. взять например array.reduce
По-моему, array.reduce только затуманит голову новичка, а здесь написано в лоб, как надо, чтобы понять суть. Вообще, отход от обычного перебора, где наглядно отображаются операнды в коде - это от лукавого. Подобие reduce, как Вы пишете, имеет сильный смысл лишь в asm.
Подобие reduce, как Вы пишете, имеет сильный смысл лишь в asm.
ага, видимо вы с asm хорошо знакомы :) тем не менее, если вы собираетесь кодить что-то серьезное, то изучите все методы объектов array и set. это реально поможет разбираться в чужом коде
Да, это так. Хотя в javascript нет особого смысла в оптимизации скорости выполнения, куда важнее читабельность. Скорость в яве зависит от архитектуры проги в целом - это, кстати, тоже необходимо понять новичку. Простота кода - это прежде всего наглядность. И будущий разработчик должен стремиться к такому коду. Я видел людей, который смогли написать свою первую прогу практически идеально по читабельности, это был шедевр, когда сам я не смог так написать, уже имея опыт в программировании. Было даже досадно. Со временем я отшлифовал методы программирования, и сейчас уже никакой код или стиль не удивит меня. Я считаю, это хорошая статья. Да, было бы неплохо привести еще пример машинного кода, вычисляющего длину вектора.
Для новичков отличная статья, просто и понятно.
Сигмы могут быть вложенными. При этом, выражение оценивается справа налево (сначала вычисляется крайняя справа сигма, затем вторая справа и т.д.), если для изменения порядка оценивания не используются круглые скобки:
Это как, простите? Сперва суммируем непонятно что слева, а потом применяем результат к тому, что справа? Можно пример?
Кстати, никто не называет по-русски сумму сигмами. Да и по-английски так не принято. И с некоторыми другими названиями вопрос спорный. Крышечка - это не циркумфлекс, хотя выглядят одинаково. Циркумфлекс - знак, имеющий фонетическое значение. В математике, да и в типографике, скорее всего (как минимум в латехе и в микрософтовской продукции), такая крышечка называется крышечкой или домиком, по-английски hat. Зачем использовать слова, которые, строго говоря, имеют другой смысл, и в любом случае не приняты в твоей области?
Вообще, смысл статьи от меня ускользает. Предполагается, что читателям придется подсчитывать на джаваскрипте математические выражения, где используются значки, смысла которых читатели не понимают?
JavaScript: примеры реализации некоторых математических выражений