выношу из комментов, про Джаваскрипт
Jul. 9th, 2015 08:18 pmлюди огорчаются, что parseInt(0.000000008,10) возращает чего-то НЕ ТО, что ожидали.
я там написал коммент
ЦИТАТА
"
так я же говорю, что в JS можно не использовать эти "шероховатости", если есть желание.
возьмем например случай из начального постинга parseInt(0.000000008,10)
опытный js программер знает, что когда надо действительно парсить всякие неожиданные данные, то к этой задаче надо отнестить серьезно и основательно, а как именно - это уже второй вопрос. Скажем, напишет регекс который будут парсить число из строки.
опытный js программер не будет полагаться на parseInt что дескать, у нас есть такая в языке хорошая надежная функция parseInt, которая умеет все правильно делать (которая типа знает, как надо, лучше меня и спецификаций), так что ее применю и дальше, типа, я не виноват, если какой косяк выйдет.
фукнция parseIn - умеет все правильно делать, если ей подали на вход строку. То есть, ее можно было бы назвать parseIntFromString. Когда ей подают строку - она обрабатывает ее простым и предсказуемы образом (берет число в левой части строки). Все, они больше ничего не делает!
засада в данном случае возникает, когда на вход parseIn подали не число, а какую-то ХЕРНЮ, которая каким-то неочевидным образом преобразовалась в строку. Но parseIn - не должна знать про эти сложности! Она должна только правильно делать свое дело.
а если известно, что на вход будут подавать херню, то понятно что к этому надо более серьезно готовиться, чем применением одной стандартной функции
http://krocodl.livejournal.com/1234490.html?thread=7483194#t7483194
я там написал коммент
ЦИТАТА
"
так я же говорю, что в JS можно не использовать эти "шероховатости", если есть желание.
возьмем например случай из начального постинга parseInt(0.000000008,10)
опытный js программер знает, что когда надо действительно парсить всякие неожиданные данные, то к этой задаче надо отнестить серьезно и основательно, а как именно - это уже второй вопрос. Скажем, напишет регекс который будут парсить число из строки.
опытный js программер не будет полагаться на parseInt что дескать, у нас есть такая в языке хорошая надежная функция parseInt, которая умеет все правильно делать (которая типа знает, как надо, лучше меня и спецификаций), так что ее применю и дальше, типа, я не виноват, если какой косяк выйдет.
фукнция parseIn - умеет все правильно делать, если ей подали на вход строку. То есть, ее можно было бы назвать parseIntFromString. Когда ей подают строку - она обрабатывает ее простым и предсказуемы образом (берет число в левой части строки). Все, они больше ничего не делает!
засада в данном случае возникает, когда на вход parseIn подали не число, а какую-то ХЕРНЮ, которая каким-то неочевидным образом преобразовалась в строку. Но parseIn - не должна знать про эти сложности! Она должна только правильно делать свое дело.
а если известно, что на вход будут подавать херню, то понятно что к этому надо более серьезно готовиться, чем применением одной стандартной функции
http://krocodl.livejournal.com/1234490.html?thread=7483194#t7483194