La sortie de TypeScript 3.7 apporte son lot de nouvelles fonctionnalités.
Moins connu que son grand frère le chainage optionnel, le nullish coalescing (coalescence nulle en français, mais c'est une traduction non officielle) fait partie de ces nouveautés.
Il permet de retourner une valeur par défaut si la valeur testée est null ou undefined :
const younup = {
expert: {
babyfoot: null,
description: '',
roxx: true
}
};
const undefinedValue = (younup.expert as any).scrabble ?? 'non disponible'; // 'non disponible'
const nullValue = younup.expert.babyfoot ?? 'non disponible'; // 'non disponible'
const description = younup.expert.description ?? 'Ici, on n\'est pas expert en babyfoot'; // ''
const isExpertIt = younup.expert.roxx ?? false; // true
Pour aller plus loin
En complément, on peut également l'utiliser conjointement avec l'opérateur de chainage optionnel.
const timeBeforeDiner = younup?.meetupDuration ?? 500;
Nous avons un double fallback :
- Si
younupestundefinedounullalors timeBeforeDiner prendra la valeur500. - Si
younup.meetupDurationestundefinedounullalorstimeBeforeDinerprendra aussi la valeur500.
Donc si vous avez bien suivi, si younup.meetupDuration est égal à 0 alors timeBeforeDiner sera égal à ... 0 !
Merci d'avoir lu cet article !
Il a été posté initialement sur le blog de @younup_it :
https://www.younup.fr/blog/l-operateur-de-nullish-coalescing-une-nouveaute-de-typescript-3-7
Cover par Andrew Seaman sur Unsplash
Top comments (0)