ArturAralin
@ArturAralin
Программист, Музыкант

Хорошо ли плодить переменные внутри JS объекта?

Всем привет! Спорим с другом-разработчиком, как правильно поступать я приверженец минимализма.

Я предлагаю такой подход

function foo(){
var a = $('el1');
var b = $('el2');
$('el3').fuu(); /**/
a.fii()
a.fooa()
b.foo1():
b.aaa();
}

new foo();


и подход моего друга

function foo(){
var a = $('el1');
var b = $('el2');
var c = $('el3');
c.fuu();
a.fii()
a.fooa()
b.foo1():
b.aaa();
}

new foo();


Вопрос в том, правильно ли заводить переменную для jQ объекта если он используется 1 раз
  • Вопрос задан
  • 2354 просмотра
Решения вопроса 1
Petroveg
@Petroveg
Миром правят маленькие с#@&ки
Я в своей практике описываю всё, что собираюсь использовать, а потом выкидываю лишнее. Крайне трудно писать сразу начисто, так что лучше потом почистить, чем дописывать создание с учётом контекста.

В общем, лучше делать как Микеланджело, только отсекать лишнее придётся от того куска гранита, в который мы сами и вылили свои мысли (в гранит ведь можно лить — так премьер сказал, а он — юрист, всё знает).
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
barkalov
@barkalov
В общем случае, ради единственного вызова переменную заводить не стоит. Но могут быть исключения. Например, вы собираетесь реализовать использование этой переменной в будущем, и хотите дать это понять в коде. Или просто для читабельности, если метод небольшой и легко видно, где переменная используется (как в примере).
Ответ написан
Комментировать
Rrooom
@Rrooom
Зависит от методологии разработки. Если вы знаете, что точно будете рефакторить - пишите как удобно. Потом ide или линтер подскажут, что вы лишнее сделали.
В общем случае - "лучше перебдеть" и закэшировать ненужное, чем где-нибудь снова создавать объект. Память "дешевле" отзывчивости приложения.
Ответ написан
Комментировать
@PiloTeZ
...
ИМХО если объект используется один раз, то нет смысла его кэшировать
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
23 апр. 2024, в 19:21
300 руб./за проект
23 апр. 2024, в 19:05
15000 руб./за проект
23 апр. 2024, в 19:01
7000 руб./за проект