בגרסה 72 של Chrome הוספנו תמיכה בתכונות הבאות:
- מעכשיו, יצירת שדות של מחלקה ציבורית ב-JavaScript הרבה יותר נקייה.
- בעזרת User Activate API החדש אפשר לראות אם דף מסוים הופעל
- קל יותר להתאים את הרשימות לשוק המקומי בעזרת
Intl.format()
API.
ויש עוד עוד המון!
שמי Pete LePage. בוא נצלול פנימה ונראה מה חדש למפתחים ב-Chrome 72!
יומן שינויים
הנה סקירה של חלק מההדגשים העיקריים. בקישורים שבהמשך יש שינויים נוספים ב-Chrome 72.
- רשימת שינויים במאגרי המקור ב-Chromium
- עדכונים ל-ChromeStatus.com עבור Chrome 72
- הוצאה משימוש והסרה של Chrome 72
שדות של כיתות ציבוריות
השפה הראשונה שלי הייתה Java, ולמידת ה-JavaScript הייתה לי תקלה. איך יוצרים כיתה? או ירושה? מה לגבי שיטות ונכסים ציבוריים ופרטיים? רבים מהעדכונים האחרונים ב-JavaScript מקלים בהרבה על תכנות מוכוון אובייקט.
עכשיו אני יכול ליצור כיתות שפועלות כמו שציפיתי, עם בנאים, משתמשים וממירים, שיטות סטטיות ונכסים ציבוריים.
בעזרת V8 7.2, שמגיע עם Chrome 72, אפשר עכשיו להצהיר על שדות מחלקה ציבוריים ישירות בהגדרת הסיווג, וכך לא צריך לעשות זאת ב-builder.
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
אנחנו עדיין עובדים על התמיכה בשדות פרטיים של כיתה!
פרטים נוספים מופיעים במאמר של מתיאס על שדות של כיתות.
ממשק API להפעלת משתמש
זוכרים מתי אתרים יכלו להשמיע צלילים באופן אוטומטי מיד לאחר טעינת הדף? אתם מערבלים כדי להקיש על מקש ההשתקה, או מבינים באיזו כרטיסייה מדובר, וסוגרים אותו. לכן, ממשקי API מסוימים מחייבים הפעלה באמצעות תנועת משתמש לפני שהם יפעלו. לצערנו, דפדפנים מטפלים בהפעלה בדרכים שונות.
ב-Chrome 72 הושקה גרסה 2 של הפעלת המשתמש, שמפשטת את הפעלת כל ממשקי ה-API השערים. ההמלצה מבוססת על מפרט חדש שנוסח במטרה לתקן את האופן שבו ההפעלה פועלת בכל הדפדפנים.
יש נכס userActivation
חדש גם ב-navigator
וגם ב-MessageEvent
,
שכולל שני נכסים: hasBeenActive
ו-isActive
:
hasBeenActive
מציין אם בחלון המשויך הייתה אי פעם הפעלה של משתמש במחזור החיים.isActive
מציין אם במחזור החיים של החלון המשויך יש כרגע הפעלת משתמש.
פרטים נוספים זמינים במאמר איך ליצור חוויית משתמש עקבית בכל ממשקי ה-API
התאמת רשימות של פריטים לשוק המקומי באמצעות Intl.format
אני אוהבת את ממשקי ה-API של Intl
, הם שימושיים מאוד להתאמה לשוק המקומי של תוכן בשפות אחרות! ב-Chrome 72 יש שיטת .format()
חדשה שמאפשרת ליצור רשימות בקלות. כמו ממשקי API אחרים של Intl
, התכונה מעבירה את העומס למנוע ה-JavaScript, בלי לפגוע בביצועים.
צריך להפעיל אותו בלוקאל הרצוי, לקרוא ל-format
ולהשתמש במילים ובתחביר הנכונים. אפשר לקשר ביניהם, שמוסיף את המקבילה המקומית and (ובודקים את פסיקים היפהפיים האלה). הוא יכול ליצור הפרדה על ידי הוספת המקבילה המקומית ל-or, ובאמצעות כמה אפשרויות נוספות תוכלו לעשות עוד יותר.
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
. - בקשות לסמלי אתרים מטופלות עכשיו על ידי קובץ השירות (service worker), כל עוד כתובת ה-URL של הבקשה נמצאת באותו מקור כמו קובץ השירות (service worker).
הרשמה
רוצים להתעדכן בסרטונים שלנו? נרשמים לערוץ YouTube של מפתחי Chrome ומקבלים התראה באימייל בכל פעם שנשיק סרטון חדש.
שמי פיט לה פייג', וברגע שגרסת Chrome 73 תושק, אני אהיה כאן כדי לספר לכם מה חדש ב-Chrome!