एक बहुत ही विशिष्ट उपयोग का मामला है, जिसमें लोकलस्टोरेज के बजाय सेशनस्टोरेज का उपयोग करने का कोई भी सुझाव वास्तव में मदद नहीं करता है। कम-से-कम एक टैब खुलने के बाद कुछ-कुछ संग्रहित होने के कारण उपयोग-मामला कुछ सरल होगा, लेकिन यदि आप शेष अंतिम टैब को बंद करते हैं, तो इसे अमान्य कर दें। यदि आपको क्रॉस-टैब और विंडो को सहेजने के लिए आपके मूल्यों की आवश्यकता है, तो सत्रस्टेज आपको तब तक मदद नहीं करता है जब तक आप श्रोताओं के साथ अपने जीवन को जटिल नहीं करते हैं, जैसे मैंने कोशिश की है। इस बीच में लोकलस्टोरेज इसके लिए एकदम सही होगा, लेकिन यह काम 'बहुत अच्छी तरह से' करता है, क्योंकि ब्राउजर के रीस्टार्ट होने के बाद भी आपका डेटा वहां इंतजार कर रहा होगा। मैंने एक कस्टम कोड और लॉजिक का उपयोग किया जो दोनों का फायदा उठाता है।
मैं बल्कि समझाता हूँ तो कोड दे। पहले स्टोर करें कि आपको लोकलस्टोरेज में क्या चाहिए, फिर लोकलस्टोरेज में भी एक काउंटर बनाएं जिसमें आपके द्वारा खोले गए टैब की संख्या होगी। हर बार पेज लोड होने और हर बार पेज अनलोड होने के बाद घट जाएगा। उपयोग करने के लिए आप यहां अपनी पिक ले सकते हैं, मैं 'लोड' और 'अनलोड' करने का सुझाव दूंगा। जब आप अनलोड करते हैं, तो आपको उन क्लीनअप कार्यों को करने की आवश्यकता होती है, जिन्हें आप काउंटर 0 पर पहुंचने पर करना चाहते हैं, जिसका अर्थ है कि आप अंतिम टैब को बंद कर रहे हैं। यहाँ मुश्किल हिस्सा आता है: मुझे पेज के अंदर पेज रीलोड या नेविगेशन और टैब को बंद करने के बीच का अंतर बताने के लिए एक विश्वसनीय और सामान्य तरीका नहीं मिला है। इसलिए यदि आपके द्वारा संग्रहित डेटा कुछ ऐसा नहीं है जिसे आप चेक करने के बाद लोड पर पुनर्निर्माण कर सकते हैं तो यह आपका पहला टैब है, फिर आप इसे हर रिफ्रेश पर नहीं निकाल सकते। इसके बजाय आपको टैब काउंटर बढ़ाने से पहले प्रत्येक लोड पर सेशनस्टोर में एक ध्वज को संग्रहीत करने की आवश्यकता होती है। इस मान को संग्रहीत करने से पहले, आप यह देखने के लिए जांच कर सकते हैं कि क्या इसका पहले से ही एक मूल्य है और यदि यह नहीं है, तो इसका मतलब है कि आप पहली बार इस सत्र में लोड कर रहे हैं, जिसका अर्थ है कि आप लोड होने पर सफाई कर सकते हैं मान सेट नहीं है और काउंटर 0 है।