Почему JavaScript такой какой он есть сейчас? [требует правки]

222
29 марта 2017, 17:41

Глядя на те языки, которые были доступны на момент создания JavaScript, я задаюсь вопросом: Почему JavaScript пошел именно этим путем и стал таким, каким он является сейчас?

Большое кол-во неинтуитивно понятных конструкций и тонкостей, которые вытекают из динамической типизации.

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

Если бы JavaScript имел бы статическую типизацию, то неужели бы он не был приманим в браузерах как сейчас?

Изначально, если верить Wiki, ставилась цель сделать JavaScript понятным для всех, но разве, то что есть сейчас справляется с изначальной целью?

Answer 1

Была такая статья «The World’s Most Misunderstood Programming Language Has Become the World’s Most Popular Programming Language» «Самый неправильно понятый язык программирования в мире стал самым популярным в мире языком программирования» Статья

Если вкратце, популярность к языку пришла случайно в связи с ростом популярности браузеров. Ну а потом понеслось: V8, Node, Phonegap.

Answer 2

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

READ ALSO
Определить с какого места на компьютере загружается файл

Определить с какого места на компьютере загружается файл

Как можно определить на php или javascript с какого места идет загрузка файла на сервер, это нужно для предварительного просмотра формы перез ее отправкоой...

236
React.js. Проверка “render” компонента на null

React.js. Проверка “render” компонента на null

Использую react-routerЕсть компонент который рендерит несколько других компонентов + this

225
Leaflet.Draw сползли иконки после обновления

Leaflet.Draw сползли иконки после обновления

После обновления пакета LeafletDraw с версии 0

207