На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:
1. Название темы - краткое описание кто/что против кого/чего
2. В первом сообщении - список параметров, по которым идет сравнение.
3. Старайтесь аргументировать свои высказывания. Фразы типа "Венда/Слюникс - ацтой" считаются флудом.
4. Давайте жить дружно и не доводить обсуждение до маразма и личных оскорблений.
Модераторы: Модераторы, Комодераторы
Страницы: (66) « Первая ... 11 12 [13] 14 15 ...  65 66  ( Перейти к последнему сообщению )  
> JS и его "недостатки"
    Цитата Астарот @
    Крайности наше все?

    Python наше все :D Вот только мы о javascript :)
      Цитата Астарот @
      Да и вообще, имхо у тебя просто играет инерция - ты привык рассматривать null в одном качестве, здесь рассматривается в другом.

      Неужели "уровень" того же питона так сильно отличается от php?
      Везде, где был null, он был в одном качестве... Даже в SQL если ты запросишь несуществующую колонку в таблице, это будет ошибка, а не NULL.
        Цитата Мяут-Настоящий @
        Python наше все :D

        Да я не против, мне-то чего? :)

        Цитата Мяут-Настоящий @
        Вот только мы о javascript :)

        Я тебе за js и сказал зачем там нужен '==='.

        Цитата D_KEY @
        Неужели "уровень" того же питона так сильно отличается от php?

        Я питон не знаю, но в пыхе вот так :-? Может неудобно, но определяющим я бы тут сделал вот что - испытывает народ от этого постоянную анальную боль, или нет? Насколько я знаю - нет, значит вполне можно с этим жить и в ус не дуть.

        Добавлено
        Уж на трагедь всех времен и народов точно не тянет :)
          JavaScript:
          ExpandedWrap disabled
            >> a = "x"
            >> b = 1
            >> a - b
            NaN

          WTF?
            Я бы сказал наоборот, после плюсов - пыхпых просто мана небесная
              Цитата Мяут-Настоящий @
              WTF?

              Ну, а тут-то тебя что смутило, чудо в перьях? :D

              Добавлено
              Мяут-Настоящий, ты по приколу посмотри что тебе вернет 1/0 :D За одно будет повод покричать "а где мое исключение?!"
                Цитата Serafim @
                Ой, слабая типизация уже отстой я так понял?
                Ну кидаем в мусорку помимо JS ещё AS, F#, C#, Python, PHP и прочее

                Ты не путаешь слабую типизацию с динамической, нет?

                А все, уже выяснили, что перепутал :)
                Понаписали...

                Добавлено
                Цитата Астарот @
                Может неудобно, но определяющим я бы тут сделал вот что - испытывает народ от этого постоянную анальную боль, или нет? Насколько я знаю - нет, значит вполне можно с этим жить и в ус не дуть.

                Все познается в сравнении. Меня когда-то и допотопный бейсик устраивал...

                Добавлено
                Цитата Астарот @
                Мяут-Настоящий, ты по приколу посмотри что тебе вернет 1/0 :D За одно будет повод покричать "а где мое исключение?!"

                Смотря кто. С/С++ - зависит от реализации. Python, естественно, кинет исключение. А js что сделает?
                Сообщение отредактировано: D_KEY -
                  Цитата D_KEY @
                  Все познается в сравнении. Меня когда-то и допотопный бейсик устраивал...

                  И что? Это ж не повод называть бейсик убогим, богомерзким и так далее.

                  Цитата D_KEY @
                  А js что сделает?

                  Если склероз не врет - вернет Infinity. А вот 0/0 вернет NaN :)

                  Добавлено
                  Цитата D_KEY @
                  Python, естественно

                  О естественности - вопрос открытый :)
                    Цитата Serafim @
                    Я бы сказал наоборот, после плюсов - пыхпых просто мана небесная

                    А сколько времени ты на плюсах писал? Чтобы оценить язык, нужно его знать и понимать зачем он нужен. А С++ в этом смысле язык специфический :D

                    Добавлено
                    Цитата Астарот @
                    Это ж не повод называть бейсик убогим, богомерзким и так далее.

                    Почему бы не назвать вещи своими именами :D ?
                    Говорят, VB вроде ничего еще, но тут судить не берусь - не знаю.
                      Цитата D_KEY @
                      А сколько времени ты на плюсах писал? Чтобы оценить язык, нужно его знать и понимать зачем он нужен.

                      Ну, кое-кто тут берется не только оценивать, но и судить язык в котором толком не разбирается :-? И все из-за областей видимости :lool:
                        Цитата Астарот @
                        Ну, а тут-то тебя что смутило, чудо в перьях? :D

                        То что строка минус число не дает ошибки времени компиляции или исполнения.
                          Цитата Мяут-Настоящий @
                          То что строка минус число не дает ошибки времени компиляции или исполнения.

                          И таки що? За тебя эту ошибку обработали и вернули NaN, говоря, что произошла ошибка в математике :)
                            Цитата Астарот @
                            Ну, кое-кто тут берется не только оценивать, но и судить язык в котором толком не разбирается :-? И все из-за областей видимости :lool:

                            Области видимости достаточно общая концепция.
                            Решение, принятое в js странное(на мой взгляд).
                            Если принимается решение о том, что переменные "поднимаются" в начало области видимости, то нужно было установить правилами языка, что переменные можно объявлять только в начале блока(как и было сделано в изначальном С). Это хотя бы последовательно.
                            Если же не хотелось так ограничивать программиста, то нужно было сделать примерно так же, как во многих других языках - переменная видна с момента объявления и до конца блока, в котором объявлена.
                            Не согласен?
                              Цитата Астарот @
                              И таки що? За тебя эту ошибку обработали и вернули NaN, говоря, что произошла ошибка в математике :)

                              Таки ничего не мешает мне присвоить этот самый NaN и использовать в дальнейших вычислениях, что еще более спутает карты. Для того, чтобы проверить такой тип ошибки мне нужно явно вставить оператор проверки:
                              ExpandedWrap disabled
                                if(c == NaN)
                                   alert('error');

                              Это же возврат во вчерашний день, во всем мире уже используются исключения

                              Добавлено
                              Роберт Мартин кстати призывает за возврат null по рукам бить (в Java), и вполне себе справедливо. С NaN та же самая ситуация
                                Цитата D_KEY @
                                Области видимости достаточно общая концепция.
                                Решение, принятое в js странное(на мой взгляд).
                                Если принимается решение о том, что переменные "поднимаются" в начало области видимости, то нужно было установить правилами языка, что переменные можно объявлять только в начале блока(как и было сделано в изначальном С). Это хотя бы последовательно.
                                Если же не хотелось так ограничивать программиста, то нужно было сделать примерно так же, как во многих других языках - переменная видна с момента объявления и до конца блока, в котором объявлена.
                                Не согласен?

                                Нужно... Не нужно... Есть два факта, первый - область видимости не блок, а функций, и второй - объявления переменных неявно поднимаются в начало области видимости. Второе, как я уже говорил, обусловлено двупроходной работой браузера - перед началом выполнения ему нужно получить все данные, вот он в не явном виде и присваивает переменным 'undefined'. Устанавливать что-то правилами языка в данном случае значит навязывать программисту проблемы браузера - это ж браузеру нужно что б переменные были изначально во что-то да установлены, а не прогеру. Так и оставили - прогер пишет так, как ему ближе, а браузер в тихую инициирует переменные в определенное значение.

                                Добавлено
                                Цитата Мяут-Настоящий @
                                Таки ничего не мешает мне присвоить этот самый NaN и использовать в дальнейших вычислениях, что еще более спутает карты.

                                Таки тебе никто и в сях не мешает сделать что-то типа:
                                Цитата
                                #define 1 0

                                или как оно там? В общем ты понял о чем я. И ведь никакой фрустрации по этому поводу никто не испытывает, что сильно характерно :)

                                Цитата Мяут-Настоящий @
                                Для того, чтобы проверить такой тип ошибки мне нужно явно вставить оператор проверки

                                Цитата Мяут-Настоящий @
                                Это же возврат во вчерашний день, во всем мире уже используются исключения

                                А то, что тебе что-то нужно вставить в исключение не беспокоит? :)
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (66) « Первая ... 11 12 [13] 14 15 ...  65 66


                                Рейтинг@Mail.ru
                                [ Script execution time: 0.1102 ]   [ 14 queries used ]   [ Generated: 25.08.26, 05:54 GMT ]