কখনও কখনও আমাদের একাধিক নাম এবং মান ব্যবহার করে জাভাস্ক্রিপ্ট কুকি তৈরি করার প্রয়োজন হতে পারে। এক্ষেত্রে আমাদের বিশেষ কিছু পদ্ধতি অনুসরন করতে হবে। এই অধ্যায়ে আমরা দেখব, কিভাবে একটি জাভাস্ক্রিপ্ট কুকিতে একাধিক নাম এবং মান ব্যবহার করা যায়।
একটি জাভাস্ক্রিপ্ট কুকিতে আমরা একাধিক নাম ও মান ব্যবহার করতে পারি না। তবে কখনও কখনও আমাদের একাধিক নাম ও মান যুক্ত কুকি তৈরি করার প্রয়োজন হতে পারে। এক্ষেত্রে আমরা 2টি পদ্ধতি অনুসরন করে এই কাজটি করতে পারি। এই 2টি পদ্ধতি হল নিম্মরুপ।
একাধিক নাম ও মান যুক্ত কুকি তৈরি করার জন্য নিচে এই 2টি পদ্ধতির বিস্তারিত বর্ণনা দেখুন।
একটি কুকির মধ্যে একাধিক name এবং value আলাদা আলাদা property হিসেবে রাখা যায় না। তবে একই ওয়েবসাইটের জন্য প্রয়োজন অনুযায়ী একাধিক cookie তৈরি করা যায়। প্রতিটি cookie-এর নিজস্ব name এবং value থাকবে।
যেমন, একজন ব্যবহারকারীর নাম এবং ভাষার তথ্য আলাদাভাবে সংরক্ষণ করতে চাইলে name এবং language নামে দুটি cookie তৈরি করা যেতে পারে। পরে document.cookie ব্যবহার করে ব্রাউজারে থাকা cookie-গুলোর তথ্য দেখা যায়।
document.cookie = "name=Anik; path=/";নিচের উদাহরণে দুটি আলাদা cookie তৈরি করা হয়েছে। ফলে প্রতিটি তথ্যের জন্য আলাদা name এবং value ব্যবহার করা সম্ভব হচ্ছে।
document.cookie = "name=Anik; expires=Fri, 31 Dec 2027 23:59:59 GMT; path=/"; document.cookie = "language=Bangla; expires=Fri, 31 Dec 2027 23:59:59 GMT; path=/"; console.log(document.cookie);
একাধিক নাম এবং মানকে একটি cookie-এর মধ্যে রাখতে চাইলে JavaScript object ব্যবহার করে সেটিকে JSON string-এ রূপান্তর করা যায়। এরপর সেই JSON string-কে cookie-এর একটি value হিসেবে সংরক্ষণ করা যায়।
JSON ব্যবহার করার সময় JSON.stringify() দিয়ে object-কে string-এ এবং পরে JSON.parse() দিয়ে string-কে আবার object-এ রূপান্তর করা যায়। Cookie value-তে বিশেষ character থাকার কারণে encodeURIComponent() ব্যবহার করা নিরাপদ পদ্ধতি।
document.cookie = "user=" + encodeURIComponent(JSON.stringify(user)) + "; path=/";নিচের উদাহরণে name এবং language দুটি property একটি object-এর মধ্যে রাখা হয়েছে। তারপর পুরো object-টি JSON string হিসেবে user নামের একটি cookie-তে সংরক্ষণ করা হয়েছে।
const user = { name: "Anik", language: "Bangla" }; document.cookie = "user=" + encodeURIComponent(JSON.stringify(user)) + "; path=/"; console.log(document.cookie);