Chrome 72 में नया

हमने Chrome 72 में, इनके लिए सहायता जोड़ी है:

  • JavaScript में पब्लिक क्लास फ़ील्ड बनाना अब पहले से कहीं ज़्यादा व्यवस्थित है.
  • यह देखा जा सकता है कि किसी पेज को नए User Activation API की मदद से चालू किया गया है या नहीं
  • Intl.format() एपीआई की मदद से, सूचियों को स्थानीय भाषा में बदलना बहुत आसान हो जाता है.

इसके अलावा, और भी बहुत कुछ है!

मेरा नाम पीट लेपेज है. आइए, जानें कि Chrome 72 में डेवलपर के लिए क्या नया है!

बदलाव लॉग

इसमें सिर्फ़ कुछ मुख्य हाइलाइट शामिल हैं. Chrome 72 में किए गए अन्य बदलावों के बारे में जानने के लिए, नीचे दिए गए लिंक देखें.

पब्लिक क्लास फ़ील्ड

मेरी पहली भाषा जावा थी और JavaScript सीखने ने मुझे थोड़ी परेशानी कर दी. मैंने कक्षा कैसे बनाई? या इनहेरिटेंस? सार्वजनिक और निजी प्रॉपर्टी और तरीकों के बारे में क्या? JavaScript के हाल ही के कई अपडेट, ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग को ज़्यादा आसान बनाते हैं.

अब मैं ऐसी क्लास बना सकता हूं जो मेरी उम्मीद के मुताबिक काम करती हैं. इनमें कंस्ट्रक्टर, गैटर और सेटर, स्टैटिक तरीके, और सार्वजनिक प्रॉपर्टी शामिल होती हैं.

Chrome 72 के साथ मिलने वाले V8 7.2 की मदद से, अब सार्वजनिक क्लास फ़ील्ड को सीधे क्लास की परिभाषा में एलान किया जा सकता है. इससे, कॉन्स्ट्रक्टर में ऐसा करने की ज़रूरत नहीं पड़ती.

class Counter {
  _value = 0;
  get value() {
    return this._value;
  }
  increment() {
    this._value++;
  }
}

const counter = new Counter();
console.log(counter.value);
// → 0
counter.increment();
console.log(counter.value);
// → 1

निजी क्लास फ़ील्ड की सुविधा पर काम चल रहा है!

ज़्यादा जानकारी के लिए, मैथियास के क्लास फ़ील्ड वाले लेख को पढ़ें.

User Activation API

क्या आपको याद है कि साइटें पेज लोड होने के साथ ही, अपने-आप आवाज़ कैसे चलाती थीं? आप म्यूट बटन को दबाने के लिए स्ट्रगल करते हैं या यह पता लगाते हैं कि यह कौनसा टैब था और उसे बंद करते हैं. इसलिए, कुछ एपीआई के काम करने से पहले, उन्हें उपयोगकर्ता के जेस्चर से चालू करना ज़रूरी होता है. माफ़ करें, ब्राउज़र इस सुविधा को चालू करने के अलग-अलग तरीके अपनाते हैं.

User activation API, पेज के साथ उपयोगकर्ता के इंटरैक्ट करने से पहले और बाद में.

Chrome 72 में, यूज़र ऐक्टिवेशन v2 उपलब्ध कराया गया है. इससे सभी गेट वाले एपीआई के लिए, उपयोगकर्ता को आसानी से ऐक्टिवेट करने में मदद मिलती है. यह नई स्पेसिफ़िकेशन पर आधारित है. इसका मकसद, सभी ब्राउज़र पर ट्रिगर करने के तरीके को स्टैंडर्ड बनाना है.

navigator और MessageEvent, दोनों पर एक नई userActivation प्रॉपर्टी है, जिसमें दो प्रॉपर्टी हैं: hasBeenActive और isActive:

  • hasBeenActive से पता चलता है कि जुड़ी हुई विंडो ने अपनी लाइफ़साइकल के दौरान कभी उपयोगकर्ता को ऐक्टिवेट किया है या नहीं.
  • isActive से पता चलता है कि उससे जुड़ी विंडो के लाइफ़साइकल में, उपयोगकर्ता ऐक्टिवेशन मौजूद है या नहीं.

ज़्यादा जानकारी के लिए, सभी एपीआई में उपयोगकर्ता चालू करने की सुविधा को एक जैसा बनाना लेख पढ़ें

Intl.format की मदद से, चीज़ों की सूचियों को स्थानीय भाषा में बदलना

मुझे Intl एपीआई पसंद हैं. ये कॉन्टेंट को दूसरी भाषाओं में स्थानीय भाषा के हिसाब से बनाने में काफ़ी मददगार हैं! Chrome 72 में, सूचियों को रेंडर करने का एक नया .format() तरीका है. अन्य Intl एपीआई की तरह ही, यह परफ़ॉर्मेंस पर असर डाले बिना, ज़िम्मेदारी को JavaScript इंजन पर ट्रांसफ़र करता है.

इसे अपनी पसंद की स्थानीय भाषा के साथ शुरू करें. इसके बाद, format को कॉल करें. ऐसा करने पर, यह सही शब्दों और सिंटैक्स का इस्तेमाल करेगा. यह जॉइन कर सकता है - जो और के स्थानीय भाषा के बराबर जोड़ता है (और उन खूबसूरत ऑक्सफ़ोर्ड कॉमा को देखें). यह या के स्थानीय बराबर को जोड़कर, डिसजंक्शन कर सकता है. साथ ही, कुछ और विकल्प देकर, और भी काम किए जा सकते हैं.

const opts = {type: 'disjunction'};
const lf = new Intl.ListFormat('fr', opts);
lf.format(['chien', 'chat', 'oiseau']);
// → 'chien, chat ou oiseau'
lf.format(['chien', 'chat', 'oiseau', 'lapin']);
// → 'chien, chat, oiseau ou lapin'

ज़्यादा जानकारी के लिए, Intl.ListFormat API के बारे में पोस्ट देखें!

और भी कई सुविधाएं!

डेवलपर के लिए, Chrome 72 में ये सिर्फ़ कुछ बदलाव हैं. इसमें और भी कई बदलाव हैं.

  • Chrome 72, Cache.addAll() के काम करने के तरीके में बदलाव करता है, ताकि वह स्पेसिफ़िकेशन को ध्यान में रखकर बेहतर तरीके से काम कर सके. पहले, एक ही कॉल में डुप्लीकेट एंट्री होने पर, बाद में अनुरोध करने पर, सिर्फ़ पहले पते को ओवरराइट कर दिया जाता था. स्पेसिफ़िकेशन के मुताबिक, अगर डुप्लीकेट एंट्री हैं, तो इसे InvalidStateError के साथ अस्वीकार कर दिया जाएगा.
  • फ़ैविकॉन के अनुरोधों को अब सेवा वर्कर मैनेज करता है. हालांकि, ऐसा तब ही होता है, जब अनुरोध करने वाला यूआरएल और सेवा वर्कर एक ही ऑरिजिन पर हों.

सदस्यता लें

अगर आपको हमारे वीडियो के बारे में अप-टू-डेट रहना है, तो Chrome Developers के YouTube चैनल की सदस्यता लें. ऐसा करने पर, जब भी हम कोई नया वीडियो लॉन्च करेंगे, आपको ईमेल से सूचना मिलेगी.

मेरा नाम पीट लेपेज है. Chrome 73 के रिलीज़ होने के बाद, मैं आपको बताऊंगा कि Chrome में नया क्या है!