- 1
$('#navi').before('<audio autoplay src="http://driverjs.webservis.ru/income.wav"></audio>');
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+148
$('#navi').before('<audio autoplay src="http://driverjs.webservis.ru/income.wav"></audio>');
Я, конечно, понимаю, что это нифига не форум программистов. Но все-таки, может найдется X-перт, который скажет мне, какого хера этот код работает, только если я предварительно зайду на адрес звука и нажму плей? Т.е. без кэшированного звука воспроизведения нет. Opera/Chrome/Firefox.
https://developer.mozilla.org/en-US/docs/HTML/Supported_media_formats
Там табличка есть, под названием Browser compatibility. И в ней нету ни одного (!) аудио/видео формата, который бы игрался через html5 всеми браузерами без установки дополнительной херни.
С такими горе-стандартизаторами флеш не умрет никогда ;) Потому что замены ему тупо нет.
Как оказалось, изменений то было:
добавили
Array.isArray(),
Array.prototype.reduceRight(),
Object.defineProperty(),
Object.defineProperties(),
Object.create(),
Object.freeze(),
Object.getOwnPropertyDescriptor(),
Object.getOwnPropertyNames(),
Object.getPrototypeOf(),
Object.isExtensible(),
Object.isFrozen(),
Object.isSealed(),
Object.keys(),
Object.preventExtensions()
Кроме этого, некоторые конструкции будут выдавать ошибки в "строгом" режиме (но большинство этого не заметит, т.как редко с ними сталкивалось.)
И все, этим стандарт ограничивается. Это, блин, за 10 лет, комитет по стандартизации столько напридумывал. (Этот стандарт был принят в 2009, а последняя поправка к предыдущему была принята в 1999.) Просто колосальную работу проделали.
А может это и к лучшему? Ну не повторять же историю крестов, где это потом еще 5 лет пытаются реализовать в компиляторах, и до сих пор не все нововведения поддерживаются. HTML (даже 5) и JS и без этого как минное поле...
Что тебе в истории крестов не нравится? Ты её просто не осилил. Плохая память на даты.
- отсутствие даже самой минимальной модульности.
- абсолютно невменяемая система типов.
- отстуствие любых инструментов по сокращению бойлерплейта.
- фактически отсутствующая стандартная библиотека (то, что есть, это совсем мизер по сравнению с любым другим языком).
- идиотские элементы синтаксиса, которые в ж.скрипте абсолютно не нужны (типа специальных операторов для манипулирования битами в машинном слове, void оператор, который используется всегда не по назначению.
Вместо этого получили полную херню. Никому не нужны все эти Object.something функции, т.как не решают они проблему, которую призваны решить (т.е. модульность). А Array.isArray - вообще насмешка над здравым смыслом: типа с одной стороны признали, что родная система типов - говно, но решили исправить ее только для одного исключительного типа.
В каких случаях его следует/не следует использовать?
Скажем,
Не нужно потому, что в языке есть уже лучшие средства для выражения того же.
Кроме всег прочего, ни одну из этих конструкций никогда не нужно использовать. Всегда есть более вменяемый путь описать то же самое. Псевдопротокол javascript упразнен давным давно. return void f() - это атавизм из Си, вызваный к жизни уебищным синтаксисом обоих языков, он только создает исключение в семантике языка, там, где это нахер не нужно. Аналогично, нахер не нужно использовать конструкцию, которая семантически описывает зависимост следующего действия от предыдущего в ситуации, когда мы уверены, что такой зависимости нет.
Т.е. нет абсолютно никакой необходимости для того, чтобы создавать исключение из правил, где синтаксически верным описанием вызова функции является "имя-функции ( список-аргументов )" в виде "аргумент имя-функции" или "аргумент имя-функции аргумент" и т.д.
Т.е. нахер не уперлось a ^ b, когда это же можно было описать как xor(a, b), более того, это позволило бы ж.скриптерам передавать функцию xor в другую функцию, например. Уменьшило бы количество правил необходимых для написания ж.скрипт парсера, ну или оставило бы значек ^ для других, более полезных вещей. Например, можно было бы позаимствовать семантику из Смолтока, где этот значек используется вместо new, ну или придумать что-нибудь более полезное.
Очень маловероятно. Разве что какой-нибудь внешний конструктор регулярок.
Просто в большинстве языков (кроме жс и перла?) регулярка неотличима от обычной строки. Поэтому на автомате подсветить ее невозможно.
Что-то такое, специализированный редактор регулярок. Есть такое?
http://www.youtube.com/watch?v=K4uKvU_aQXY дарт по быстрей будет.
Короче, чуваки привыкли писать на Яве, и ее им сильно не хватало, вот они и запилили "улучшенную" Яву, как смогли.
Например, тот же Самсунг разработали "улучшенный" ХТМЛ для встраиваемых систем (использовался до последнего времени на их телевизорах). К этому улучшенному ХТМЛю прилагался скриптовый язык, в котором было собрано все самое лучше из Луа, Сисярпа и горячечного воображения его создателей. Валла - самый большой израильский новостной интернет-концерн тоже, даже по сей день пользуются каким-то проприетарным говном, которое они называют Ди-скрипт (подобие ПХП). Еще в одной кноторе - Брейнпоп довелось познакомистыся с безымянным языком типа ПХП написаным каким-то уебаном 10 лет назад потому, что ему ПХП не понравился.
Из более современного и популярного говна: Гремлин язык запросов, или, вообще феноменальное убожество: Цифер - язык запросов написаный в Нео4дже какими-то фантастическими ебланами.
Дарт - мало чем в этом смысле отличается. Он написан людьми без минимального понимания задачь и механизмов. Но проблема усугубляется еще и тем, что прототип - тоже феноменальное говно, и на этом фоне все что угодно покажется чудом.
Дарт писали люди которые писали двиг js для хрома это v8 я так думаю они знают и задачи и механизмы.
Майкрософт играет на руку сам себе? Ну в общем то логично ;)
Ну а вообще у теоры качество похуже, чем у аш264 на том же битрейте, если я ничего не путаю.
Вот с видео действительно мутно - Theora (древнее гогно на основе VP3. самое свободное), VP8 (псевдосвободный от гугля. ждем-с патентных войн), H264 (самое лучшее по уровню сжатия и поддержке устройствами. 10 лет. highly patented)
А на подходе Daala, VP9 и Hevc...
Theora=>Daala (Xiph, Mozilla), VP8=>VP9 (Google убого плагиатит H264 и HEVC) и H264=>Hevc (сборище злых корпораций).
Причём сейчас самый патентованный из них и самый технологичный. MPEG всегда были лидерами. On2 - плагиатчики. А Xiph не хватает людей и бабла.
http://pastebin.com/GjCqrJYr
Несколько форматов через <source> тоже.
Альзо, какой еблан назвал домен webservis.ru?