Équivalent de l'instruction Ruby unless en JavaScript
-
Créer une fonction définie par l’utilisateur pour implémenter l’instruction
unless
en JavaScript -
Inversez l’instruction
if-else
pour implémenter l’instructionunless
en JavaScript
En Ruby, les instructions conditionnelles suivent la convention unless
, alors que la plupart des langages de programmation préfèrent la condition if-else
. L’avantage est similaire; seule la préférence est intégrée à chaque langue.
Autre que Ruby, Perl, CoffeeScript, etc., utilisez l’instruction unless
.
Ici, dans notre cas, nous allons visualiser l’application d’une instruction générale if-else
avec la définition de unless
. Cela signifie que nous allons configurer notre instruction if-else
pour qu’elle se comporte comme une instruction unless
.
Pour le lecteur, nous allons générer une fonction appelée unless
, et aussi, nous utiliserons directement if-else
pour effectuer l’opération de l’instruction unless
.
Créer une fonction définie par l’utilisateur pour implémenter l’instruction unless
en JavaScript
La fonction que nous allons créer ici prendra une condition. De plus, sur la base de cette condition, nous générerons une autre fonction de rappel qui déduira la satisfiabilité de la fonction.
Voyons les lignes de code pour une meilleure compréhension.
Extrait de code:
let unless = (condition, callback) => {
!condition && callback();
} let a = 10;
let b = 20;
unless(a > b, () => {console.log('A should be greater than B')})
Production:
Comme vous pouvez le voir, la fonction unless
prend une condition. Dans notre cas, la condition est que a est inférieur à b
.
Mais la fonction unless
est annulée, et lorsque nous définissons la condition sur a>b
, elle l’acceptera et déclenchera la fonction de rappel. Mais selon le scénario d’une instruction générale if-else
, elle n’était pas censée déclencher la fonction de rappel car la condition serait tombée sous l’instruction else
.
Inversez l’instruction if-else
pour implémenter l’instruction unless
en JavaScript
Cette partie est relativement plus facile à saisir et à mettre en œuvre. Tout ce dont vous avez besoin est de définir le if
comme else
et le else
comme if
.
Quelle que soit la condition appliquée sur if
sera niée au préalable, et ainsi, le else
sera automatiquement défini. Essayons la barrière de code pour démontrer la situation.
Extrait de code:
var a = 42;
var b = 10;
if (!(a > b)) {
console.log('Incorrect');
} else {
console.log('Correct');
}
Production: