منظور از web storage در HTML چیست؟ چگونه میتوانیم از ذخیره سازی وب در HTML استفاده کنیم؟ در این مقاله میخواهیم در رابطه با web storage در HTML صحبت کنیم.
سرفصلهای پست
ذخیره سازی تحت وب چیست؟
توسط این روش، اپلیکیشن های تحت وب می توانند داده های خود را به صورت محلی در مرورگر ذخیره کنند. قبل از html5، اپلیکیشن ها باید داده ها را در کوکی ها و در هر درخواست سرور قرار می دادند.
ذخیره سازی تحت وب امنیت بیشتری دارد و همچنان مقدار داده بیشتری را می توان به صورت محلی بدون تاثیر گذاشتن بر کیفیت اجرای وبسایت ذخیره کرد.
برخلاف کوکی ها، محدودیت ذخیره سازی مبتنی بر وب بسیار بیشتر است(حداقل 5 مگابایت) و اطلاعات هیچ وقت به سرور منتقل نمی شوند.
این روش ذخیره سازی برپایه مبدا است(دامین و پروتکل). همه صفحات از یک مبدا می توانند به داده های یکسان دسترسی داشته باشند.
آبجکت ذخیره سازی
این روش ذخیره سازی دو آبجکت برای ذخیره داده ها برروی کلاینت ارائه می دهد:
- localstorage – ذخیره داده ها بدون تاریخ انقضاء
- sessionstorage – ذخیره داده ها برای یک جلسه(session)، داده ها هنگام بسته شدن تب مرورگر از بین می روند.
قبل از استفاده از ذخیره سازی مبتنی بر وب، پشتیبانی مرورگر را برای localstorage و sessionstorage بررسی کنید:
if (typeof(Storage) !== "undefined") { // Code for localStorage/sessionStorage. } else { // Sorry! No Web Storage sup port.. }
آبجکت localstorage
این آبجکت داده ها را بدون هیچ تاریخ انقضایی در مرورگر ذخیره می کند. هنگام بسته شدن مرورگر داده ها حذف نمی شوند بلکه برای استفاده های آتی در طی روز ها، هفته ها و یا سال ها در دسترس هستند.
// Store localStorage.setItem("lastname", "Smith"); // Retrieve document.getElementById("result").innerHTML = localStorage.getItem("lastname");
ساخت یک جفت کلید/مقدار با نام lastname و مقدار smith
بازگرداندن مقدار کلید lastname و اضافه کردن آن به عنصر با شناسه result
مثال بالا را می توان به شکل زیر بازنویسی کرد:
// Store localStorage.lastname = "Smith"; // Retrieve document.getElementById("result").innerHTML = localStorage.lastname;
روش حذف کلید lastname از localstorage به شکل زیر است:
localStorage.removeItem("lastname");
نکته: به خاطر داشته باشید جفت های کلید/ مقدار همیشه به صورت رشته ای ذخیره می شوند. بنابراین در هنگام استفاده در صورت نیاز آن ها را به فرمت مورد نظر تبدیل کنید.
مثال زیر، تعداد کلیک های کاربر بر روی یک دکمه را حساب می کند و نوع مقدار را از رشته به عدد باز می گرداند تا بتوان در شمارشگر مورد استفاده قرار گیرد.
if (localStorage.clickcount) { localStorage.clickcount = Number(localStorage.clickcount) + 1; } else { localStorage.clickcount = 1; } document.getElementById("result").innerHTML = "You have clicked the button " + localStorage.clickcount + " time(s).";
آبجکت sessionstorage
این آبجکت با آبجکت localstorage یکسان است با این تفاوت که داده ها را فقط برای یک جلسه ذخیره می کند. داده ها پس از بسته شدن تب مرورگر از بین می روند.
مثال زیر تعداد دفعات کلیک کاربر برروی دکمه را حساب و ذخیره می کند.
if (sessionStorage.clickcount) { sessionStorage.clickcount = Number(sessionStorage.clickcount) + 1; } else { sessionStorage.clickcount = 1; } document.getElementById("result").innerHTML = "You have clicked the button " + sessionStorage.clickcount + " time(s) in this session.";
پایان ترم
[box type=”info” class=”question-from-users” width=””]از ذخیره سازی تحت وب در چه مواردی استفاده میشود؟
به ایمیل کسانی که پاسخ درست و کامل رو در نظرات بگن ۱۰ هزارتومان در پنل کاربری آکادمی میزفا حسابشون شارژ میشه. (البته باید در آکادمی میزفا ثبتنام کنید تا بتونید از این امتیاز استفاده کنید.)
[/box]نتیجه گیری
در این مقاله از فصل آشنایی با API ها در HTML ، با ذخیره سازی وب یا Web Storage آشنا شدیم.
امیدوارم این مقاله از مجموعه آموزش های متنی HTML براتون مفید بوده باشه و اگر سوال، پیشنهاد یا انتقادی داشتید حتما بپرسید. من قول میدم که در اولین فرصت بهتون پاسخ بدم.
تا مقاله بعدی …