Как зайти в Даркнет?!
25th January, 01:11
8
0
Как в tkinter из поля ввода Entry получить значение в одну переменную и обновить строку кнопкой, затем получить ещё одно введённое значение и затем сложить их. Ниже пример кода
21st July, 19:00
898
0
Программа, которая создает фейковые сервера в поиске игровых серверов CS 1.6 Steam
21st March, 17:43
951
0
Очень долго работает Update запрос Oracle
27th January, 09:58
916
0
не могу запустить сервер на tomcat HTTP Status 404 – Not Found
21st January, 18:02
907
0
Где можно найти фрилансера для выполнения поступающих задач, на постоянной основе?
2nd December, 09:48
941
0
Разработка мобильной кроссплатформенной военной игры
16th July, 17:57
1725
0
период по дням
25th October, 10:44
3957
0
Пишу скрипты для BAS только на запросах
16th September, 02:42
3722
0
Некорректный скрипт для закрытия блока
14th April, 18:33
4614
0
прокидывать exception в блоках try-catch JAVA
11th March, 21:11
4382
0
Помогите пожалуйста решить задачи
24th November, 23:53
6087
0
Не понимаю почему не открывается детальное описание продукта
11th November, 11:51
4352
0
Нужно решить задачу по программированию на массивы
27th October, 18:01
4398
0
Метода Крамера С++
23rd October, 11:55
4309
0
помогите решить задачу на C++
22nd October, 17:31
4002
0
Помогите решить задачу на python с codeforces
22nd October, 11:11
4492
0
Python с нуля: полное руководство для начинающих
18th June, 13:58
2599
0
Javascript: объявление переменной перед условным результатом?
Мой JavaScript довольно номинальный, поэтому, когда я увидел эту конструкцию, я был немного озадачен:
var shareProxiesPref = document.getElementById("network.proxy.share_proxy_settings");
shareProxiesPref.disabled = proxyTypePref.value != 1;
Не лучше ли сделать if на proxyTypePref.value, а затем объявить var внутри результата, только если вам это нужно?
(Кстати, я также нашел эту форму очень трудной для чтения по сравнению с обычным использованием. Вместо выполнения одного if с блоком операторов в результате был создан набор из двух или трех таких условных выражений.)
UPDATE:
Ответы были очень полезными и требовали большего контекста. Фрагмент кода от Firefox 3, так что вы можете увидеть код здесь:
http://mxr.mozilla.org/firefox/source/browser/components/preferences/connection.js
В принципе, когда вы смотрите на окно настроек подключения в Firefox, щелчок по режимам прокси (переключателям) вызывает включение|отключение различных элементов формы.
(Кстати, я также нашел эту форму очень трудной для чтения по сравнению с обычным использованием.
(Кстати, я также нашел эту форму очень трудной для чтения по сравнению с обычным использованием.
Не обязательно, хотя это была и моя первая мысль. Код всегда должен подчеркивать свою функцию, особенно если он имеет побочные эффекты. Если намерение писателя состояло в том, чтобы подчеркнуть назначение на sharedProxiesPref.disabled , тогда Эй, катитесь с ним. С другой стороны, было бы яснее, что действие, происходящее здесь, заключается в отключении объекта, и в этом случае условный блок был бы лучше.
Это зависит от контекста этого кода. Если он работает при загрузке страницы, то было бы лучше поместить этот код в блок if.
Но, если это часть функции проверки, и поле переключается между включенным и отключенным в течение всего срока службы страницы, то этот код имеет смысл.
Важно помнить, что установка значения disabled в false также изменяет состояние страницы.
Трудно сказать, что лучше делать без дополнительного контекста.
Если этот код выполняется каждый раз, когда изменяется proxyTypePref, то вам всегда понадобится set shareProxiesPref.disabled .
Я бы согласился, что оператор if будет немного более читабельным, чем текущий код.
Не лучше ли сделать if на
proxyTypePref.value, а затем объявить var внутри результата, только если вам это нужно?
Если вы говорите строго о объявлении переменной, то не имеет значения, помещаете ли вы ее в Оператор if. Любая переменная Javascript, объявленная внутри функции, находится в области видимости для всей функции, независимо от того, где она объявлена.
Если вы говорите о выполнении document.getElementById, то да, гораздо лучше не делать этого вызова, если вам это не нужно.