Immer gesehen!! im JavaScript-Code und fragte mich, was los ist? Lassen Sie es uns in einfachen Worten aufschlüsseln.
Der Doppelknall (!!) ist eine schnelle Möglichkeit, jeden Wert in einen booleschen Wert (wahr oder falsch) umzuwandeln. So einfach ist das!
Stellen Sie sich das so vor, als würden Sie JavaScript fragen: „Hey, existiert dieser Wert und ist er sinnvoll?“
Sehen wir uns einige kurze Beispiele an:
// 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!"
!! ist besonders nützlich, wenn:
Dies sind alle Werte, die bei Verwendung von !!:
falsch werdenAlles andere wird wahr!
In if-Anweisungen konvertiert JavaScript Werte automatisch in boolesche Werte, also Folgendes:
if (!!username) { // do something }
Ist dasselbe wie:
if (username) { // do something }
Einige Entwickler bevorzugen die Verwendung von Boolean(), weil es offensichtlicher ist, was passiert:
Boolean("hello") // true Boolean("") // false !!("hello") // true !!("") // false
Beide funktionieren genau gleich – verwenden Sie das, was für Sie sinnvoller ist!
Denken Sie daran: Der beste Code ist Code, den Ihr Team leicht verstehen kann. Ob Sie !! oder Boolean(), seien Sie einfach konsistent!
Das obige ist der detaillierte Inhalt vonVerständnis !! in JavaScript - Einfache Anleitung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!