Size: a a a

JavaScript — русскоговорящее сообщество

2020 August 10

В

Валентин in JavaScript — русскоговорящее сообщество
Мирко Крокоп
Привет, ребята!

Осваиваю JavaScript, а теперь и TypeScript. Обратил внимание, что даже код, написанный по новым стандартнам можно автоматически без труда переделать в код с поддержкой ES6 или ES5 или даже более старые варианты. Например, в настройках tsconfig за это отвечает опция "target".

Подскажите. пожалуйста, почему все не выбирают в качестве целевой версии наиболее старую, например, es3? Ведь это даст максимальную поддержку среда браузеров. Есть какие то недостатки у такого варианта, мб, код слишком большой и тяжелый станвоится или еще что то?

Буду благодарен за подсказку.
ES3? Нафига?
Стандарт это ES5 сейчас.
источник

O

Outof in JavaScript — русскоговорящее сообщество
Йеп
источник

В

Валентин in JavaScript — русскоговорящее сообщество
Мирко Крокоп
Привет, ребята!

Осваиваю JavaScript, а теперь и TypeScript. Обратил внимание, что даже код, написанный по новым стандартнам можно автоматически без труда переделать в код с поддержкой ES6 или ES5 или даже более старые варианты. Например, в настройках tsconfig за это отвечает опция "target".

Подскажите. пожалуйста, почему все не выбирают в качестве целевой версии наиболее старую, например, es3? Ведь это даст максимальную поддержку среда браузеров. Есть какие то недостатки у такого варианта, мб, код слишком большой и тяжелый станвоится или еще что то?

Буду благодарен за подсказку.
Надеюсь в ваши планы не входит поддержка IE6)))
источник

МК

Мирко Крокоп... in JavaScript — русскоговорящее сообщество
Валентин
ES3? Нафига?
Стандарт это ES5 сейчас.
Дело не в конкретном стандарте)
Вопрос, скорее,  в чем минус варианта с ES3 или ES5, если пишу я все-равно на новом  стандарте, а TypeScript обработка или babel все-равно автоматически переведёт в нужный формат  за секунды?

Плюсы: поддержка старых браузеров.
А в чем минусы?)
источник

В

Валентин in JavaScript — русскоговорящее сообщество
Мирко Крокоп
Дело не в конкретном стандарте)
Вопрос, скорее,  в чем минус варианта с ES3 или ES5, если пишу я все-равно на новом  стандарте, а TypeScript обработка или babel все-равно автоматически переведёт в нужный формат  за секунды?

Плюсы: поддержка старых браузеров.
А в чем минусы?)
Смысл как и в поддержке IE6.
Поизвращаться конечно можно, но зачем?
Чем в более древнюю версию идёт транспилляция, тем код длиннее становится, обрастая всякими полифиллами и костылями.
источник

M

Mr. Nobody in JavaScript — русскоговорящее сообщество
Мирко Крокоп
Дело не в конкретном стандарте)
Вопрос, скорее,  в чем минус варианта с ES3 или ES5, если пишу я все-равно на новом  стандарте, а TypeScript обработка или babel все-равно автоматически переведёт в нужный формат  за секунды?

Плюсы: поддержка старых браузеров.
А в чем минусы?)
Чем старее стандарт тем больше там полифилов условно. То что в es5 встроено на уровне движка, в es3 решается полифилом на JS.
источник

В

Валентин in JavaScript — русскоговорящее сообщество
Мирко Крокоп
Дело не в конкретном стандарте)
Вопрос, скорее,  в чем минус варианта с ES3 или ES5, если пишу я все-равно на новом  стандарте, а TypeScript обработка или babel все-равно автоматически переведёт в нужный формат  за секунды?

Плюсы: поддержка старых браузеров.
А в чем минусы?)
Зачем поддерживать неподдерживаемые производителями версии браузеров?
Сейчас всё более-менее нормально везде, можно даже на последние ие забивать.
источник

МК

Мирко Крокоп... in JavaScript — русскоговорящее сообщество
Mr. Nobody
Чем старее стандарт тем больше там полифилов условно. То что в es5 встроено на уровне движка, в es3 решается полифилом на JS.
Выходит, что ухудшение только в увеличении размера кода, не более того?
источник

M

Mr. Nobody in JavaScript — русскоговорящее сообщество
Например JSON туда относится вроде как. Полифил будет скорей всего хуже работать по производительности.
источник

M

Mr. Nobody in JavaScript — русскоговорящее сообщество
Мирко Крокоп
Выходит, что ухудшение только в увеличении размера кода, не более того?
Как раз в скорости и оптимизациях.
источник

МК

Мирко Крокоп... in JavaScript — русскоговорящее сообщество
Валентин
Зачем поддерживать неподдерживаемые производителями версии браузеров?
Сейчас всё более-менее нормально везде, можно даже на последние ие забивать.
На последние IE, к сожалению, забивать нежелательно, если сервис рассчитан на гос сектор и большой бизнес.

Но вопрос был именно о разнице между вариантами.
источник

МК

Мирко Крокоп... in JavaScript — русскоговорящее сообщество
Понял, объём кода и производительность страдают.

Ребята,  спасибо за такой оперативный отклик!
источник

В

Валентин in JavaScript — русскоговорящее сообщество
Мирко Крокоп
На последние IE, к сожалению, забивать нежелательно, если сервис рассчитан на гос сектор и большой бизнес.

Но вопрос был именно о разнице между вариантами.
Пока такие страдающие за корпоративный сегмент будут заниматься его поддержкой, светлого будущего нам не видать. Уже сама майкрософт рекомендует не использовать ие.
источник

S🛸

Sergey 🛸 in JavaScript — русскоговорящее сообщество
Dmitry Kudryavtsev
привет всем, написал функция которая возвращает класс, в нее прокидывается конструктор и методы. Когда я вызываю метод в конце, у меня this.name undef , не могу понять где его прокинуть должен, объясните пожалуйста
Потому что функция ничего не знает про твой this
источник

S🛸

Sergey 🛸 in JavaScript — русскоговорящее сообщество
Мирко Крокоп
Привет, ребята!

Осваиваю JavaScript, а теперь и TypeScript. Обратил внимание, что даже код, написанный по новым стандартнам можно автоматически без труда переделать в код с поддержкой ES6 или ES5 или даже более старые варианты. Например, в настройках tsconfig за это отвечает опция "target".

Подскажите. пожалуйста, почему все не выбирают в качестве целевой версии наиболее старую, например, es3? Ведь это даст максимальную поддержку среда браузеров. Есть какие то недостатки у такого варианта, мб, код слишком большой и тяжелый станвоится или еще что то?

Буду благодарен за подсказку.
Потому что размер кода будет больше
источник

AP

Anton Permyakov in JavaScript — русскоговорящее сообщество
Валентин
ES3? Нафига?
Стандарт это ES5 сейчас.
ES6 уже
источник

В

Валентин in JavaScript — русскоговорящее сообщество
Anton Permyakov
ES6 уже
Что-то не видел я проектов без бабеля)
Ну если так то тем более не ес3.)
источник

S🛸

Sergey 🛸 in JavaScript — русскоговорящее сообщество
Anton Permyakov
ES6 уже
IE11 ещё используется
источник

AP

Anton Permyakov in JavaScript — русскоговорящее сообщество
Sergey 🛸
IE11 ещё используется
в большей части проектов - нет
источник

AP

Anton Permyakov in JavaScript — русскоговорящее сообщество
если смотреть только на банки, можно сказать что ие9 тоже используется
источник