Junior
Que fait l'opérateur de double point d'exclamation dans le langage de programmation?
sobes.tech IA
Réponse de l'IA
Convertit une valeur en booléen. Équivalent à appliquer deux fois l'opérateur non (!).
Le premier ! convertit la valeur en type booléen, en l'inversant. Par exemple, une chaîne non vide 'abc' devient false, et 0 devient true.
Le second ! inverse le résultat du premier, renvoyant la représentation booléenne d'origine de la valeur. Ainsi, 'abc' devient true, et 0 false.
Exemples en JavaScript :
// Conversion d'une chaîne non vide
console.log(!!'bonjour'); // true
// Conversion du nombre 0
console.log(!!0); // false
// Conversion de null
console.log(!!null); // false
// Conversion de undefined
console.log(!!undefined); // false
// Conversion d'un tableau vide
console.log(!![]); // true
// Conversion d'un objet vide
console.log(!!{}); // true
Exemples en Python (bien que Python n'ait pas d'opérateur natif !!, on peut émuler son comportement) :
# Émulation avec bool()
print(bool('bonjour')) # True
print(bool(0)) # False
print(bool([])) # True
print(bool({})) # True
# Émulation avec not not
print(not not 'bonjour') # True
print(not not 0) # False
print(not not []) # True
print(not not {}) # True
L'objectif principal est la conversion explicite en booléen, souvent utilisée pour vérifier la "truthiness" d'une valeur dans le contexte d'opérations booléennes et de structures conditionnelles.