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

    Ну я вообще-то сказал, что зря он так.

    Цитата
    Кстати, вот ты все время "пользователь может вызвать функцию не так... надо вернуть ошибку..." Браузер вообще-то тот же пользователь - именно он вызывает код обработчиков события, и ему ошибку возвращать бессмысленно - браузер тупой, он как вызывал так и будет вызывать, ему пофиг на все :-? С этой точки зрения нужна максимальная лояльность в форме вызова, что бы дать возможность отработать коду внутрях, вдруг он сможет разрулить противоречие. Иначе пришлось бы делать так:
    1. узнать версию браузера
    2. при подвешивании события устроить кучку if'ов, типа если ie, то обработчик вызвать так, если ff - сяк...

    При этом первый пункт придется реализовывать на том же js, а значит могут быть нюансы зависящие от браузера, для разруливания которых нужно браузер определить, для чего придется... и так далее по кругу :D А второй пункт обозначает что у тебя каждое подвешивание события обрастет бахромой лишнего кода.

    Оно это все надо? :-? Особенно если учесть, что и с максимальной лояльностью приходится учитывать различия браузеров, и это дается не малой кровью. А прикинь если все будет более строго, а?

    Я тебя не узнаю. Прям даже аргументы появляются :D

    Если тебе нужна лояльность - объяви обработчик, как принимающий произвольное число аргументов и задай явным аргументам null по умолчанию. Т.е. сделай явным то, что делается в js неявно.
    Сообщение отредактировано: D_KEY -
      Цитата Астарот @
      Ну так когда будут - тогда и можно говорить :-? К тому же это далеко не единственное чего там нет.


      По другому только 1% экзотов :whistle:
      А вобще есть https://developer.mozilla.org/En/DOM/Document.querySelector - это поддерживают все современные броузеры ( 90% )

      Вобще ЖабаСкрипт очень гибкий язык, и если уметь это использовать то много бонусов получаем
        Цитата korvin @
        Вот я, например, вообще пользуюсь NoScript-плагином для FF, и по-дефолту скрипты отключены. Хороший веб-сервис при этом должен продолжать исправно функционировать (ну разве что с мультимедиа-контентом не все так просто, но это пока), JS же должен лишь дополнять и предоставлять какие-то бонусные удобства, не более. К сожалению многие говносайты без JS вообще не могут адекватно работать =(
        Ну это опять зависит от программиста... у меня везде стоят ссылки, которые при отключенном js ведут на соответсвующую страницу - а в админке наоборот не парюсь, назвался админом - будь добр включить js 8-)

        Добавлено
        Цитата D_KEY @
        Если тебе нужна лояльность - объяви обработчик, как принимающий произвольное число аргументов и задай явным аргументам null по умолчанию. Т.е. сделай явным то, что делается в js неявно.
        Зачем, если оно итак все есть? Зачем напрягаться реализовывать явно, если итак все работает?
          Цитата fatalist @
          Цитата D_KEY @
          Если тебе нужна лояльность - объяви обработчик, как принимающий произвольное число аргументов и задай явным аргументам null по умолчанию. Т.е. сделай явным то, что делается в js неявно.
          Зачем, если оно итак все есть? Зачем напрягаться реализовывать явно, если итак все работает?

          Не реализовывать, а описать. Т.е. вместо function f(e) будет function(e = null) ну или function f(e = null, *arguments) в крайнем случае. Напрягся? Зато остальные функции останутся нормальными. Впрочем, повторю, что браузеры могут быть просто менее строгими.
            Цитата D_KEY @
            Я тебя не узнаю. Прям даже аргументы появляются :D

            Да нет, это ты начал слышать - аргумент-то уже сто раз высказан, просто повернут чуть другим боком, что бы ты наконец обратил на него внимание :)

            Цитата D_KEY @
            Если тебе нужна лояльность - объяви обработчик, как принимающий произвольное число аргументов и задай явным аргументам null по умолчанию. Т.е. сделай явным то, что делается в js неявно.

            То, что "не явно" делается в 100% случаев - это явно, просто на экране не набирается :wall: Если подумаешь, то во всех языках найдешь такое, и убедишься, что оно тебя не парит.

            Цитата D_KEY @
            Не реализовывать, а описать. Т.е. вместо function f(e) будет function(e = null) ну или function f(e = null, *arguments) в крайнем случае. Напрягся? Зато остальные функции останутся нормальными.

            Нахрена?
              Цитата Астарот @
              Lua хуже тем, что там нет getElementById()
              Таки в js его тоже нет.
                Цитата SPM @
                Таки в js его тоже нет.

                Ну да, если залезть в стандарт ECMA, то нету :) Но в браузерах де факто есть, так что лично я считаю, что он есть в js для веба :whistle:
                  Вся проблема в том, что вы рассматриваете js исключительно в контексте браузеров(и тут я с вами не спорю - вам виднее, да и не критично), а я говорю о скриптовом языке. При этом вас почему-то не устраивает, чтобы браузеры были бы менее строгими, чем, например, встраиваемые движки приложений или "обычные" интерпретаторы, и в своей внутренней кухне могли бы вызывать "неправильно" ваши обработчики и пр. и пр.

                  Добавлено
                  Цитата Астарот @
                  Цитата SPM @
                  Таки в js его тоже нет.

                  Ну да, если залезть в стандарт ECMA, то нету :) Но в браузерах де факто есть, так что лично я считаю, что он есть в js для веба :whistle:

                  Вот было бы хорошо, если бы в стандарте и функции были "нормальными", но в браузерах де факто действовали бы менее строгие правила, особенно для внутренней кухни :)
                    Цитата D_KEY @
                    Вся проблема в том, что вы рассматриваете js исключительно в контексте браузеров(и тут я с вами не спорю - вам виднее, да и не критично), а я говорю о скриптовом языке.

                    Нет, проблема в том, что ты отрываешь язык от его основной области применения и начинаешь рассуждать о нем в сферичном вакууме, в то время, как на нем таки нужно работать, а не иметь его на стенке в рамочке :)

                    Цитата D_KEY @
                    Вот было бы хорошо, если бы в стандарте и функции были "нормальными", но в браузерах де факто действовали бы менее строгие правила, особенно для внутренней кухни :)

                    Так как стандарта ты не знаешь - можешь смело считать, что в нем все очень строго, а браузеры позволяют послабления :D Результат тот же, и ты спокоен :D
                      Цитата D_KEY @
                      Не надо добавлять такой параметр. Это раз.

                      Куда добавлять?


                      Цитата D_KEY @
                      И в Си такая фича есть, это два

                      Научи меня плиз, я не в курсе.


                      Цитата D_KEY @
                      Ну и winAPI не имеет никакого отношения к С, это три

                      :blink:
                        Цитата Астарот @
                        Цитата D_KEY @
                        Вся проблема в том, что вы рассматриваете js исключительно в контексте браузеров(и тут я с вами не спорю - вам виднее, да и не критично), а я говорю о скриптовом языке.

                        Нет, проблема в том, что ты отрываешь язык от его основной области применения и начинаешь рассуждать о нем в сферичном вакууме, в то время, как на нем таки нужно работать, а не иметь его на стенке в рамочке :)

                        Я тебе говорил, что js встречается и вне браузеров.

                        Цитата
                        Цитата D_KEY @
                        Вот было бы хорошо, если бы в стандарте и функции были "нормальными", но в браузерах де факто действовали бы менее строгие правила, особенно для внутренней кухни :)

                        Так как стандарта ты не знаешь - можешь смело считать, что в нем все очень строго, а браузеры позволяют послабления :D Результат тот же, и ты спокоен :D

                        Но это, скорее всего, не так... Было бы так - спорить было бы не о чем.

                        Добавлено
                        Цитата Uncle_Bob @
                        Цитата D_KEY @
                        Не надо добавлять такой параметр. Это раз.

                        Куда добавлять?

                        К аргументам. Не нужны какие-то левые параметры, добавляемые только затем, чтобы в новых версиях туда что-нибудь начать записывать.

                        Цитата
                        Научи меня плиз, я не в курсе.

                        Я про va_list и пр.
                        Для С++ с сохранением информации о типе показывал вчера.

                        Цитата
                        Цитата D_KEY @
                        Ну и winAPI не имеет никакого отношения к С, это три

                        :blink:

                        Да, представь себе, winAPI - это API для приложений windows, доступный даже из asm и delphi. Да, он, естественно, проектировался с учетом особенностей С(куда же без него).
                          Цитата D_KEY @
                          Я тебе говорил, что js встречается и вне браузеров.

                          А я тебе отвечал :whistle:
                            Цитата D_KEY @
                            Я тебе говорил, что js встречается и вне браузеров.
                            Ну так там интерпретатор свой? Что мешает делать этому интерпретатору все то, без чего вы жить не можете?
                              Цитата fatalist @
                              Цитата D_KEY @
                              Я тебе говорил, что js встречается и вне браузеров.
                              Ну так там интерпретатор свой? Что мешает делать этому интерпретатору все то, без чего вы жить не можете?

                              Стандарт. Браузеры же традиционно относятся менее строго к тому же html, могут так же спустя рукова работать и с js :)
                                Цитата fatalist @
                                Ну так там интерпретатор свой? Что мешает делать этому интерпретатору все то, без чего вы жить не можете?

                                Ну так это же будет уже не тот js :D
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:
                                Страницы: (66) « Первая ... 41 42 [43] 44 45 ...  65 66


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