-
Posts
5,139 -
Joined
-
Last visited
-
Days Won
32
Content Type
Profiles
Forums
Calendar
Store
Everything posted by s0rr0w
-
И что нам делать с твоим кодом CSS?
-
Я бы не разрабатывал. Добавил бы новых пару элементов и все.
-
Изучайте внимательнее код. То, что вы написали - затычка а не решение.
-
Копать в сторону float. Контейнер <div id="content"> пуст, хотя в коде и находятся какие-то теги. Срочно читать, на что влияет overflow, а особенно как он влияет на float элементы внутри данного контейнера.
-
100$ в час. Исправлю проблему.
-
Вообще-то HTML может еще потягаться с XML в плане "стандарта" веб. Весь смак HTML в предварительном визуальном форматировании и ограниченном количестве тегов (на мой взгляд хватило бы только HTML, HEAD, TITLE, LINK, SCRIPT, BODY, DIV, SPAN, A, все остальное логическое форматирование можно перенести на имена классов )
-
Кто мне может рассказать негативные стороны данного скрипта и данного подхода, который выдал нам Dude?
-
Да, вы хотите, чтобы кто-то потратил свое время и нашел на гугле то, что вы не хотите найти. Умение искать информацию - позитивное качество любого адекватного программиста.
-
Сколько памяти? Пару байт? К чему крохоборство? Браузер может течь в несколько раз больше из-за неправильного алгоритма самого браузера, чем из-за обработчика, который должен удаляться при удалении его таргета. Не придумывайте себе "проблемы". Лучше займитесь глобальными вещами, например изучайте алгоритмы или улучшайте свои.
-
Можно подучить матчасть. JavaScript например...
-
Какие именно обработчики каких именно событий?
-
Мдаааа, оскуднел ресурс на толковые советы. Удалять элементы рекурсивно, это надо было додуматься! if ( !document.createRange ) { node.innerHTML = ""; } else { var tmpRange = document.createRange(); tmpRange.selectNodeContents(node); tmpRange.deleteContents(); tmpRange.detach(); }
-
Информация вспоминается не сразу. Я точно помнил, что декларация переменных в JS была не обязательной при при помощи var, но не мог вспомнить где. Вспомнил, решил запостить.
-
Это не вымысел неизвестного автора, это было в доках по JS до версии 1.4 http://devedge-temp.mozilla.org/library/ma...uide/ident.html Со временем переработали отношение к декларации переменной.
-
Меня не вводит. При конкретной реализации, global object часто не одно и то же что и variable object. http://lxr.mozilla.org/seamonkey/source/js.../jsinterp.c#522 Да, тут пропедалил немного. При декларации переменных создаются проперти с NULL'евыми значениями. (в мозилле по крайней мере это так http://lxr.mozilla.org/seamonkey/source/js...sinterp.c#4539)
-
К примеру, глобальном объекте. Т.е., одно от другого вы отличаете сугубо по алгоритмам? Вот мне интересно, а чем у вас свойство отличается от переменной? Приведите общее описание, абстрагируясь от алгоритма работы интерпретатора. Так вы внимательно читайте спеки. Вы же у нас знающий, а не я. 12.2 Variable statement При наличии AssignmentExpression, интерпретатор всегда проходит пункт 8.6.2.2 [[Put]] (P, V)
-
Поскипал часть "обсуждения". Можно было бы дальше спорить, но это уже оффтопик. Так оно и есть. Только в вашем случае (zebra = function () {};) нет никакого объявления переменной. На остальные вопросы принципиально не отвечаете? Процесс создания именованного свойства объекта можно называть объявлением переменной? Почему объявление переменной - это создание свойства объекта, а создание свойства объекта - не создание переменной. Используется Спасибо, что мне напомнили. Знаете чем отличаются автомеханики от гонщиков? Одни знают все про машину, но эти знания не дают им шансов выиграть гонку. Вторые просто ездят, и достигают результатов.
-
Вам придется сильно постараться, чтобы доказать мне, что я действительно путаюсь в трех соснах. Если бы вы внимательно читали спецификацию, то у вас не было бы утверждения, что нет ни одного способа идентификации функции вида zebra = function (){}; И, тем более, вам придется серьезно постараться, чтобы доказать, что я действительно оспариваю good practice. Я всего лишь указываю на то, что нужно не слепо верить, а думать над теми вещами, которые происходят. Дизайн программы? Это смешно! Когда над одним кодом могут работать разные люди разной квалификации, с разным пониманием языка, то ни о каком дизайне обычно не идет речь. И прежде чем показывать на меня пальцем, советую приводить свои варианты решения. Чтобы не было голословных заявлений. Общение со мной бесполезное занятие, если мне пытаются бездоказательно что-либо рассказать. Я люблю аргументированные споры, а не надувание щек. Я просил доказательства - их нет. Есть всего лишь заявления, что я либо слеп, либо глуп. Отличное утверждение! Не зная условий, в которых будет использоваться данный скрипт, как вы пришли к выводу, что нужно использовать только ОДИН вариант декларации функции, и никаких других быть не должно? Простите, а как по-русски будет Variable declaration? Уж не объявление ли переменной? И является ли создание идентифицированного свойства объекта объявлением переменной? Откуда такие придирательства к словам, которые четко отражают суть? Как вы считаете, проходит ли алгоритм декларации переменной пункт 8.6.2.2 спецификации? Все переменные в ES ялвяются свойствами, хотя и со своими ньюансами. На что вы мне хотели открыть глаза? Я не понимаю.
-
Да даже и ошибиться, не вижу в этом ничего позорного. Я думал, что пример говорит сам за себя. Итак, у вас есть некий cgi-модуль, который динамически формирует определенный JS в зависимости от контекста. Кусок JS кода передается модулю как параметр из других модулей. Порядок добавления кода может быть разным. Вам нужно производить инициализацию некого объекта только один раз, самым первым модулем, который был в стеке. Факт инициализации можно записывать в флаге, а можно сделать следующим образом Глобальная функция инициализации function init () { code... }; модуль 3 init(); var init= function(){}; модуль 1 init(); var init= function(){}; модуль 2 init(); var init= function(){}; В данном случае гарантировано будет исполнена функция инициализации всего один раз. Да мне лично пофиг, что кто-то не может воспринять мой код. Простите, но я в курсе, какая разница. Я не признаю зашоренного ограничения сознания всего одним вариантом. Никогда еще ограниченность не делала решения шедевральными. Как я уже и говорил, нормального и взвешенного доказательства не будет. Описание говорить может, но из него не вытекает однозначность выбора. То, что переменная объявляется в глобальном контексте. Пример Влада, как я уже говорил, вырожден, и не может служить примером идеального решения. Код может использоваться в любом месте, с любыми начальными данными, со всевозможными отклонениями. Код не идеален сам по себе и, даже с исправлениями, решает только самые примитивные задачи.
-
Стоило пропустить слово референс, как тут-же слышу вопли про неверное представление. Да возвращается ссылка на значение. Но на значение созданной переменной. Это фича языка. Все действия не противоречат логике работы интерпретатора. Может и не стать. Кто вам сказал, что я не обращаю внимания? Не надо пытаться привести обоснование действий на основе вырожденных вариантов применения скрипта. Если смотреть глобальнее, то не всегда FunctionDeclaration приносит позитив. Например function x () { alert("Do something once"); }; x(); function x () { alert("Stop") }; x (); в обоих случаях будет два алерта "Stop"; А вот в этом случае function x () { alert("Do something once"); }; x(); var x = function() { alert("Stop") }; x (); Будет выведено два разных алерта. Надо ли пояснять практический смысл данного примера? С точки зрения получения результата - нет разницы. Вы просто не сможете доказать, что один из вариантов лучше, и только его надо обязательно использовать. Любой из вариантов создания функции имеет свои плюсы и минусы, зная их, можно более гибко строить работу скрипта. Практическое применение вашего чудо-кода есть? Или это только вырожденные варианты, которые встречаются в реальных кодах в одном случае из миллиона?
-
Это не баг, это фича языка. Все переменные являются объектами, результат, который возвращает парсер, должен быть объектом. Чтобы вернуть объект, надо его создать.
-
10.1.4 Scope Chain and Identifier Resolution