LINUX.ORG.RU

JavaScript простой язык?

 

Ответ на: комментарий от Miguel

Действительно ад. Вместо системы счисления используется индекс... Ужас

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

["10","10","10"].map((value) => { return parseInt(value, 10); });
fsb4000 ★★ ()
Ответ на: комментарий от RazrFalcon

4 версия была пропущена в нумерации стандартов...

Там даже потоков нету. Вы о чём?

Потоков в стандарте я поиском не нашел, но для браузеров нагуглил такую библиотеку http://keithwhor.github.io/multithread.js/

А для node.js такой плагин https://github.com/losfair/node-multithread

fsb4000 ★★ ()
Ответ на: комментарий от RazrFalcon

Плюсую. Но на пол шишечки.

Можно поиграться с алертами (которые блочатся) и тяжелыми и легкими циклами и полюбоваться, что никто никого не рейскондишит и завершаются они в порядке как боженька пошлет.

deep-purple ★★★★★ ()
Ответ на: комментарий от fsb4000

[«10»,«10»,«10»].map((value) => { return parseInt(value, 10); });

достаточно даже

["10","10","10"].map(value => parseInt(value, 10));


Действительно ад. Вместо системы счисления используется индекс... Ужас

надеюсь это был сарказм

kiotoze ★★★★ ()

Это один из самых сложных языков на свете, но мало кто это понимает.

Именно потому что он выглядит простым, он просто провоцирует создание «простого» кода мегабайтами. Разобрать который потом оказывается сложнее, чем мегабайты ассемблерного кода для какого-нибудь вымершего процессора.

dmiceman ★★★★★ ()

Размером спеки сложность языка не оценить(ман художественная литература). Более того, сложности бывают разные.

Скажем, сложность изучения зависит, в основном от размера словаря (чуть хуже линейного - но сильно можно не всё сразу) и семантики, совсем неочевидно как(скорее всего от прошлого опыта); cинтаксис добавляет мало, т.к. относительно короткий, обычно. Т.ч. реально сравнить можно только длинну списка ключевых слов+стандартной библиотеки, и вряд ли это главная характеристика.

Сложность реализации зависит существенно иначе, семантика и синтаксис с нецензурными константами, причём второй - двоичный(:парсится/не парсится:) + логарифмический(скорее всего, ибо реюз) словарь. Но «умные люди, пишущие компиляторы»(c)(tm), не должны задавать такие вопросы нам, дилетантам.

Ещё важна сложность использования, зависящая от совсем других факторов, типа соответствия прикладной задаче, состояния рынков труда и батареек. Вероятно, это offtopic.

DonkeyHot ★★★★★ ()
Последнее исправление: DonkeyHot (всего исправлений: 1)
Ответ на: комментарий от anonymous

Достаточно
["10","10","10"].map(value => parseInt(value))

Если основание системы счисления имеет значение undefined (неопределено) или равно 0 (или не указано), то JavaScript по умолчанию предполагает следующее:

Если значение входного параметра string начинается с «0x» или «0X», за основание системы счисления принимается 16, и интерпретации подвергается оставшаяся часть строки.
Если значение входного параметра string начинается с «0», за основание системы счисления принимается либо 8, либо 10, в зависимости от конкретной реализации. В спецификации ECMAScript 5 прописано использование 10 (десятичная система), но это поддерживается еще не всеми браузерами, поэтому необходимо всегда указывать основание системы счисления при использовании функции parseInt.
Если значение входного параметра string начинается с любого другого символа, система счисления считается десятичной (основание 10).

kiotoze ★★★★ ()