Chrome 72 में नया

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

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

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

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

बदलाव लॉग

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

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

मेरी पहली भाषा Java थी और 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 में, उपयोगकर्ता चालू करने की सुविधा का दूसरा वर्शन लॉन्च किया गया है. इससे, ऐक्सेस कंट्रोल वाले सभी एपीआई के लिए, उपयोगकर्ता चालू करने की सुविधा को आसानी से इस्तेमाल किया जा सकता है. यह नई स्पेसिफ़िकेशन पर आधारित है. इसका मकसद, सभी ब्राउज़र पर ट्रिगर करने के तरीके को स्टैंडर्ड बनाना है.

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 में नया क्या है!