Pull to refresh

Comments 15

то что написано в этом посте обычный веб-разработчик и так знает, вы бы лучше рассказали про реализацию ваших cookie.set('bla', 'blabla') и cookie.get('bla') глядишь и пригодиться кому…
Посмотрел код — чистенько все, опрятно, хорошо
Как-то ваш cookie.get() не очень красивый. Я вот какой использую:
get: function (n)
{
var r = new RegExp("(.*?"+n+"=)(.*?)((;.*)|$)");
var c = document.cookie;
if (c.match( r ))
{
return c.replace(r, "$2");
} else {
return "";
}
}
Я для себя тестировал, с регэкспами медленнее работает :)
скажите, в каком месте может понадобиться многократное обращение к кукам? настолько многократное, что RegExp начинает влиять на производительность?
Собственно это мой бзик, на всякий який, а вдруг понадобиться:)))) Сказать, где такое понадобится — не скажу!

Я реализовал так, лишь потому, что по моим тестам вышло быстрее, и я посчитал значит так тому и быть.
Извините, не было цели угодить всем и вся!

Я же сказал, писал для себя, просто решил выложить. И можно же пост читать повнимательнее, я же написал что для тех кто еще не в теме.
Зачем так бурно реагировать, я лишь хотел показать альтернативный вариант.
Этому коду есть куда развиваться: пока ещё недостаёт минимализма.

Вспомните, как в jQuery одна и та же функция $(element).html() без параметров возвращает код HTML внутренностей некоторого элемента, а с параметром — заменяет код HTML на значение параметра. Вот минимализм!

Так и тут можно было бы упромыслить:
cookie('cookieName', 'cookieValue');     // присвоение значения

if (var option = (cookie('optionName') || defaultOptionValue) ) {...     // использование значения
И никаких set() и get().
Кстати, под jQuery есть плагин для работы с cookie, там всё именно так и есть.
Я вообще-то написал о популярных фреймворках, прочтите в теле поста!
Так я ведь не тело поста комментирую! :)

Но формально Вы правы, этот момент я как-то упустил.
function getCookie(name){
var bOut = false;
return unescape(document.cookie.replace(/([^ ;=]+)=?([^;]+)?;?/g,function(m,n,v){
if (n==name && !bOut) {
bOut = true;
return v;
} else {
return '';
}
}));
}
у меня вот такой монстрик по проектам кочует… как-то написал и вдруг пригодилось
Sign up to leave a comment.

Articles