Cookie(tasty-cookies)を操作するためのライブラリ

物語は古く、誰もがwindow.cookie = '...'(またはおそらく誰かがそれを使用している)を覚えていると思います。これはひどく不便なことです。

ネイティブjsの例を示します。

//   function setCookie(key, value) { window.cookie = key + '=' + encodeURIComponent(JSON.stringify(value)); } //   function getCookie(key) { var matches = document.cookie.match(new RegExp( '(?:^|; )' + key.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + '=([^;]*)' )); return JSON.parse(decodeURIComponent(matches[1])); } //   setCookie('string', ' '); //   setCookie('object', {a: 1, b: 2}); //   var object = getCookie('object'); 


昔、ネットワークの裏通りでjQuery cookieのようなすばらしいものを見つけましたが、やがて1つの方法ではcookieを便利に操作するには不十分であることに気付き始めました。

jQuery Cookieを使用した同じ例:

 //   $.cookie('string', ' '); //   $.cookie('object', {a: 1, b: 2}); //   var object = $.cookie('object'); 

少し前に私は角度に精通し始めました、そして彼らがクッキーの独自の実装を持っていることは奇妙ではありません、それはあまり良くありませんが、私には少し「奇妙」、「つまらない」ようです。 メソッドputObject、getObjectは一般的にひどいですが、なぜですか?

そして再び例:

 angular.module('cookiesExample', ['ngCookies']) .controller('ExampleController', ['$cookies', function($cookies) { //   $cookies.put('string', ' '); //   $cookies.putObject('object', {a: 1, b: 2}); //   var object = $cookies.getObject('object'); }]); 

私はこの多様な色にうんざりしています。とても暖かく居心地がよく、最も簡単なことを実行し、Cookieを操作するための優れたツールを提供したいと思います。 私は検索に深く入りましたが、驚いたことに、自分にふさわしいものが見つかりませんでした。一部のライブラリには方法がなく、他の方法でも十分ですが、私には奇妙です。 たぶん私はうるさいですか?

これらすべてに基づいて、私は最も丸い車輪と快適な座り心地を備えた自転車を発明することにしました。 これは正しいと思います。 一般に、これがおいしいCookieライブラリ自体とロシアのドキュメントであることが判明したのは、数日間の作業でした。

おいしいクッキーの例:

 Cookie.set({ //   string: ' ', //   object: {a: 1, b: 2} }); //   var object = Cookie.get('object'); 

JSONオブジェクトを使用するため、古いブラウザーのサポートが必要な場合は、 JSON 3のようなレーキを取得できますが、何を言っているのでしょうか?

批評家、仕事の評価、そしてもちろん図書館を改善するための提案を聞きたいです。

Source: https://habr.com/ru/post/J280998/


All Articles