Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 26.05.2010, 21:28
Аватар для Aleko
Аспирант
Отправить личное сообщение для Aleko Посмотреть профиль Найти все сообщения от Aleko
 
Регистрация: 28.04.2010
Сообщений: 42

копировать переменную по ссылке
Задача: создать две ссылки на одну переменную. Пример - есть переменная a=5, необходимо сделать так чтобы переменная b была всегда в точности равна a, даже если a изменится. Ума не приложу как это сделать.
Ответить с цитированием
  #2 (permalink)  
Старый 26.05.2010, 21:38
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

(function(){
var d = {a:5},
    b = d;
d.a = 6;
alert(b.a)
})()
Ответить с цитированием
  #3 (permalink)  
Старый 26.05.2010, 21:41
Аватар для Aleko
Аспирант
Отправить личное сообщение для Aleko Посмотреть профиль Найти все сообщения от Aleko
 
Регистрация: 28.04.2010
Сообщений: 42

Да это то ясно...
тут снова одна и та же переменная только в разных обертках, а нужно чтобы 2 переменных было. Смысл в чем:
длиннаяРасписаннаяПеремен наяДляПользователя=5
короткПеремДляСкрипта= // то же самое
Ответить с цитированием
  #4 (permalink)  
Старый 26.05.2010, 21:45
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от Aleko
создать две ссылки на одну переменную
Никак.

Но, например,
длиннаяРасписаннаяПеремен наяДляПользователя=5
функцияСКороткимИменемВоз врПеременнуюДляПользовате ля

Вообще исходя из задачи нужно делать.
Ответить с цитированием
  #5 (permalink)  
Старый 26.05.2010, 21:50
Аватар для Aleko
Аспирант
Отправить личное сообщение для Aleko Посмотреть профиль Найти все сообщения от Aleko
 
Регистрация: 28.04.2010
Сообщений: 42

Kolyaj, можно подробнее?
Ответить с цитированием
  #6 (permalink)  
Старый 26.05.2010, 21:59
Аватар для mycoding
NodeJS developer - ушел
Отправить личное сообщение для mycoding Посмотреть профиль Найти все сообщения от mycoding
 
Регистрация: 06.01.2010
Сообщений: 1,022

Уже задовался этим вопросом. Если хочется получить что-то похоже как в C++, то не получится.
Ответить с цитированием
  #7 (permalink)  
Старый 26.05.2010, 22:00
Аватар для B@rmaley.e><e
⊞ Развернуть
Отправить личное сообщение для B@rmaley.e><e Посмотреть профиль Найти все сообщения от B@rmaley.e><e
 
Регистрация: 11.01.2010
Сообщений: 1,810

d = function(){
  var veryLongVariable = 5,
*!*       fnc = function(){return veryLongVariable};*/!*
  setInterval(function(){
     veryLongVariable = Math.random()*10|0;
  }, 1000);
  return fnc;
}();
setTimeout(function(){
  if(confirm('Значение: '+d() + '\nПродолжить?')) setTimeout(arguments.callee, 500);
}, 500);

Последний раз редактировалось B@rmaley.e><e, 26.05.2010 в 23:03.
Ответить с цитированием
  #8 (permalink)  
Старый 26.05.2010, 22:18
Аватар для Aleko
Аспирант
Отправить личное сообщение для Aleko Посмотреть профиль Найти все сообщения от Aleko
 
Регистрация: 28.04.2010
Сообщений: 42

B@rmaley.e><e, это да, но снова не идеал. Так как изменение короткой переменной не будет влиять на длинную. Но мне это всё таки поможет кое в чем.. спасибо.
Ответить с цитированием
  #9 (permalink)  
Старый 26.05.2010, 22:20
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сделайте из функции гетер/сетер. Если аргумент пришёл в функцию, то меняем переменную, если не пришёл, то возвращаем.
Ответить с цитированием
  #10 (permalink)  
Старый 26.05.2010, 22:40
Аватар для Aleko
Аспирант
Отправить личное сообщение для Aleko Посмотреть профиль Найти все сообщения от Aleko
 
Регистрация: 28.04.2010
Сообщений: 42

Kolyaj, подробнее пожалуйста))
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как заставить функцию при запуске увидеть ГЛОБАЛЬНУЮ переменную? возжаждавший Элементы интерфейса 8 23.02.2017 01:27
Как сделать локальную переменную глобальной?? Дмитрий Общие вопросы Javascript 8 02.11.2010 03:33
$.ajax-как передать переменную в данных Dimaz jQuery 1 15.02.2010 16:00
Не могу записать значение в переменную!!! di@mond Элементы интерфейса 3 30.06.2009 23:05
Как обозначить переменную выбранную в FileChooser? woo_hoo Общие вопросы Javascript 4 03.07.2008 12:58