Реклама на сайте Advertise with us

В javascript получить переменую из cookie

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 03.07.05
Сообщения: 39
Рейтинг: 24

Ссылка на сообщениеДобавлено: 07/03/11 в 18:12       Ответить с цитатойцитата 

как можно быстро и главное просто получить из одного cookie в javascript 3 переменых которые в cookie записаны в виде "val1|val2|val3"
буду благодарен в виде 3+

0
 



С нами с 13.02.11
Сообщения: 2
Рейтинг: 3

Ссылка на сообщениеДобавлено: 07/03/11 в 18:50       Ответить с цитатойцитата 

Код:

var cookie_val = "val1|val2|val3"; // то есть в cookie_val содержится значение твоей куки
...
var cookie_values = cookie_val.split('|');

// теперь cookie_values - массив с val1, val2 и т.д.

3
 



С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538


Передовик Master-X (01.11.2009) Передовик Master-X (16.11.2009) Передовик Master-X (01.02.2011) Передовик Master-X (01.12.2011) Передовик Master-X (16.12.2011) Ветеран трепа Master-X (01.01.2014)
Ссылка на сообщениеДобавлено: 07/03/11 в 18:55       Ответить с цитатойцитата 

Для начала надо определить функцию

Код:
function getCookie( name ) {
   var n = name + "=";
   var l = document.cookie.length;
   var i = 0;
   while( i < l ) {
      var j = i + n.length;
      if( document.cookie.substring( i, j ) == n ) {
         var k = document.cookie.indexOf( ";", j );
         if( k == -1 ) { k = l; }
         return unescape( document.cookie.substring( j, k ) );
      }
      i = document.cookie.indexOf( " ", i ) + 1;
      if( i == 0 ) { break; }
   }
   return null;
}

Теперь просто:

Код:
var vars = getCookie( 'exampleCookieName' ).split( '|' );


и твои переменные в массиве vars.

3
 



С нами с 03.07.05
Сообщения: 39
Рейтинг: 24

Ссылка на сообщениеДобавлено: 07/03/11 в 20:52       Ответить с цитатойцитата 

ага отБлагодарил )))

0
 



С нами с 03.07.05
Сообщения: 39
Рейтинг: 24

Ссылка на сообщениеДобавлено: 07/03/11 в 20:55       Ответить с цитатойцитата 

а еще вопрос в догонку, VAR перед переменой зачем ставить?

0
 



С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538


Передовик Master-X (01.11.2009) Передовик Master-X (16.11.2009) Передовик Master-X (01.02.2011) Передовик Master-X (01.12.2011) Передовик Master-X (16.12.2011) Ветеран трепа Master-X (01.01.2014)
Ссылка на сообщениеДобавлено: 07/03/11 в 21:00       Ответить с цитатойцитата 

3
 



С нами с 03.07.05
Сообщения: 39
Рейтинг: 24

Ссылка на сообщениеДобавлено: 07/03/11 в 21:13       Ответить с цитатойцитата 

получается если без ВАР то переменная видна везде?

и еще дополнение к начальному вопросу. можно сделать на подобии ПХП
list(v1,v2,v3) = getCookie( 'exampleCookieName' ).split( '|' );
такая не работает конструкция

0
 



С нами с 06.03.03
Сообщения: 1650
Рейтинг: 1096

Ссылка на сообщениеДобавлено: 08/03/11 в 00:40       Ответить с цитатойцитата 

без var переменная становится свойством объекта window. т.е. myVar = 1 будет эквивалентно window.myVar = 1, ну и доступна будет везде.

аналога list в яваскрипте помоему нет. но можно сделать что то типа:

Код:
var data = 'value1|value2|value3'.split('|');
['var1','var2','var3'].forEach(function(i){window[i]=data.shift()});


после этого можно обращаться к var1, var2 и var3 как к глобальным переменным.

3
 



С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538


Передовик Master-X (01.11.2009) Передовик Master-X (16.11.2009) Передовик Master-X (01.02.2011) Передовик Master-X (01.12.2011) Передовик Master-X (16.12.2011) Ветеран трепа Master-X (01.01.2014)
Ссылка на сообщениеДобавлено: 08/03/11 в 03:52       Ответить с цитатойцитата 

Foxs писал:
можно сделать на подобии ПХП
list(v1,v2,v3) = getCookie( 'exampleCookieName' ).split( '|' );


Можно, если сделать переменные свойствами объекта:


Код:
function list( o, a ) {
   for( var i in o ) o[i] = a.shift();
}

var vars = { v1:null, v2:null, v3:null };

list( vars, getCookie( 'exampleCookieName' ).split( '|' ) );

alert(vars.v1);
alert(vars.v2);
alert(vars.v3);

3
 



С нами с 03.07.05
Сообщения: 39
Рейтинг: 24

Ссылка на сообщениеДобавлено: 08/03/11 в 22:07       Ответить с цитатойцитата 

благодарю, все равно такой сложный язык, хрен поймешь его.

0
 



С нами с 06.03.03
Сообщения: 1650
Рейтинг: 1096

Ссылка на сообщениеДобавлено: 09/03/11 в 20:17       Ответить с цитатойцитата 

зато потом когда разберешься - очень удобно, я хотел бы чтоб некоторые фишки языка были в пхп.

3
 



С нами с 03.07.05
Сообщения: 39
Рейтинг: 24

Ссылка на сообщениеДобавлено: 10/03/11 в 16:32       Ответить с цитатойцитата 

да книг нормальных нет, а по инету изучать - нереально, постояно что то отвлекает.

0
 



С нами с 09.03.09
Сообщения: 6053
Рейтинг: 3538


Передовик Master-X (01.11.2009) Передовик Master-X (16.11.2009) Передовик Master-X (01.02.2011) Передовик Master-X (01.12.2011) Передовик Master-X (16.12.2011) Ветеран трепа Master-X (01.01.2014)
Ссылка на сообщениеДобавлено: 10/03/11 в 19:58       Ответить с цитатойцитата 

3
 



С нами с 03.07.05
Сообщения: 39
Рейтинг: 24

Ссылка на сообщениеДобавлено: 10/03/11 в 21:09       Ответить с цитатойцитата 

Благодарю конечно, но на английском это не реально)))

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »