Maison >interface Web >js tutoriel >Compréhension !! en JavaScript - Guide simple
Du jamais vu !! en code JavaScript et vous vous demandez ce qui se passe ? Décomposons-le en termes simples.
Le double bang (!!) est un moyen rapide de convertir n'importe quelle valeur en booléen (vrai ou faux). C'est aussi simple que ça !
Pensez-y comme si vous demandiez à JavaScript : "Hé, cette valeur existe-t-elle et est-elle significative ?"
Regardons quelques exemples rapides :
// These become true !!42 // true (any number except 0) !!"Hello" // true (any non-empty string) !!{} // true (any object) !![] // true (any array) // These become false !!0 // false !!"" // false (empty string) !!null // false !!undefined // false
function validateName(name) { if (!name) { // same as if (!!name === false) return "Please enter your name"; } return `Thanks, ${name}!`; } validateName("") // "Please enter your name" validateName("Sarah") // "Thanks, Sarah!"
function handleResponse(data) { const hasData = !!data?.items?.length; if (hasData) { return "Found some results!"; } return "No results found"; } handleResponse({items: []}) // "No results found" handleResponse({items: [1,2,3]}) // "Found some results!"
!! est particulièrement utile lorsque :
Ce sont toutes les valeurs qui deviennent fausses lors de l'utilisation !!:
Tout le reste devient vrai !
Dans les instructions if, JavaScript convertit automatiquement les valeurs en booléens, donc ceci :
if (!!username) { // do something }
C'est la même chose que :
if (username) { // do something }
Certains développeurs préfèrent utiliser Boolean() car ce qui se passe est plus évident :
Boolean("hello") // true Boolean("") // false !!("hello") // true !!("") // false
Les deux fonctionnent exactement de la même manière : utilisez celui qui vous semble le plus logique !
N'oubliez pas : le meilleur code est un code que votre équipe peut facilement comprendre. Que vous utilisiez !! ou Boolean(), soyez juste cohérent !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!