|
03.09.2010, 17:48
|
|
Рассеянный профессор
|
|
Регистрация: 06.04.2009
Сообщений: 2,379
|
|
with-love-from-siberia, в теме есть про замыкания, но да, тоже вариант.
|
|
03.09.2010, 18:06
|
Кандидат Javascript-наук
|
|
Регистрация: 25.11.2009
Сообщений: 109
|
|
Цитата:
|
function getA(){
return 1+1;
};
|
Данный вариант не подходит т.к. каждый раз при вызове ф-ции будет происходить вычисление выражения. В примере 1+1, в реале выражение может быть сколь угодно сложное и ресурсоемкое. Поэтому я искал вариант который позволит произвести вычисление один раз, далее же чтоб я просто мог использовать результат вычисления.
|
|
03.09.2010, 18:15
|
Профессор
|
|
Регистрация: 16.03.2010
Сообщений: 1,618
|
|
Сообщение от jetli13
|
в реале выражение может быть сколь угодно сложное и ресурсоемкое
|
Это многое объясняет
|
|
03.09.2010, 18:17
|
Кандидат Javascript-наук
|
|
Регистрация: 25.11.2009
Сообщений: 109
|
|
Sweet,
Рад что мы поняли друг друга!
|
|
03.09.2010, 18:23
|
Профессор
|
|
Регистрация: 16.03.2010
Сообщений: 1,618
|
|
А так не проще ли?
var getA = (function(){
var a = 1 + 1;
return a;
})();
var b = getA;
Или так?
var getA = 1 + 1;
var b = getA;
|
|
03.09.2010, 18:26
|
Кандидат Javascript-наук
|
|
Регистрация: 25.11.2009
Сообщений: 109
|
|
Цитата:
|
А так не проще ли?
показать чистый исходник в новом окнеСкрыть/показать номера строкпечать кода с сохранением подсветки
var getA = (function(){
var a = 1 + 1;
return a;
})();
var b = getA;
Или так?
var getA = 1 + 1;
var b = getA;
|
Проще, но - в этих случаях getA будет торчать в глобальной области памяти.
А это и было одним из условий вопроса
Последний раз редактировалось jetli13, 03.09.2010 в 18:28.
|
|
03.09.2010, 18:35
|
Профессор
|
|
Регистрация: 16.03.2010
Сообщений: 1,618
|
|
getA будет по-любому торчать в глобальной области. Я просто не могу понять, почему так важно, чтобы она была функцией, возвращающей значение "а", а не самой "а"
|
|
03.09.2010, 20:34
|
Кандидат Javascript-наук
|
|
Регистрация: 25.11.2009
Сообщений: 109
|
|
Цитата:
|
getA будет по-любому торчать в глобальной области. Я просто не могу понять, почему так важно, чтобы она была функцией, возвращающей значение "а", а не самой "а"
|
потому что если это будет не функция, то для инициализации переменной мне придется произвести вычисление выражения. А в случае функции я возможно и не вызову ее ни разу.
|
|
03.09.2010, 20:42
|
Профессор
|
|
Регистрация: 16.03.2010
Сообщений: 1,618
|
|
Все, вопросов больше не имею. Тогда вариант Riim'а действительно то, что надо.
|
|
03.09.2010, 20:57
|
Кандидат Javascript-наук
|
|
Регистрация: 25.11.2009
Сообщений: 109
|
|
Sweet,
Гут! )
|
|
|
|