Heim Web-Frontend Front-End-Fragen und Antworten Javascript bedeutet, dass es nicht existiert

Javascript bedeutet, dass es nicht existiert

May 12, 2023 pm 08:47 PM

JavaScript ist eine höhere Programmiersprache, die von vielen Programmierern zum Entwickeln von Webanwendungen und Websites verwendet wird. Obwohl es leistungsstark, flexibel und leicht zu erlernen ist, weist es einige Einschränkungen auf, darunter die Unfähigkeit, nicht existierende Werte darzustellen.

In JavaScript gibt es zwei Werte, die auf Nichtexistenz hinweisen: null und undefiniert. Sie sehen ähnlich aus, weisen aber tatsächlich einige Unterschiede auf. nullundefined。它们看起来很相似,但实际上有一些差别。

null 值表示变量或表达式没有值或没有对象。它是一个特殊的值,意味着该变量没有指向任何值或对象。例如,如果你要声明一个变量来存储一个人的名字,但你不知道他们的名字,你可以将变量设置为 null

undefined 值表示变量已经声明了但尚未赋值,也可以在对象上使用没有定义的属性和方法时返回。前者是因为 JavaScript 变量默认情况下是 undefined,后者则是因为 JavaScript 允许定制对象,允许你添加任何属性和方法。

然而,这两种表示不存在的值都有一些缺点。首先,它们是 JS 中的全局范围内的变量,这意味着你可以通过使用 nullundefined 对恰当的变量进行重新赋值,可能会导致潜在的错误和不一致。

其次,它们不能表示不存在的值,只能表示变量没有指向任何值或对象。这是一个重要的区别。例如,如果你有个数组,但是它没有任何元素,你不能使用 nullundefined 来表示这种情况。你可以使用一个空数组,但这不是很好的解决方案,因为它会造成冗余和不必要的内存占用。

因此,人们经常在代码中使用其他技巧来表示值的缺失。一种叫做“短路求值”的技术,可以使用操作符 &&|| 来检查值是否存在。如果存在,则返回该值,否则返回一个默认值。例如,如果你有一些数据,但是你不确定其中是否有一个名为“年龄”的属性,你可以使用 && 运算符来检查:

const age = data.age && data.age;
Nach dem Login kopieren

这条语句将检查 data.age 是否存在,如果存在则将它分配给 age 变量,否则将分配 undefined(但是这里你不能使用 null,因为这样就可能会将 null 错误地视为存在的值)。

另外一种技巧是使用“默认参数值”,这允许你指定变量的默认值,以便在变量不存在时使用。例如:

function greet(name) {
  name = name || 'Stranger';
  console.log(`Hello, ${name}!`);
}
Nach dem Login kopieren

这个函数参数 name 默认设置为 'Stranger' ,如果参数 name 没有被传入,或传入的是 nullundefined,那么 'Stranger' 将会被使用。

总之,尽管 JavaScript 的 nullundefined

null-Wert bedeutet, dass die Variable oder der Ausdruck keinen Wert oder kein Objekt hat. Es handelt sich um einen Sonderwert, was bedeutet, dass die Variable auf keinen Wert oder Objekt zeigt. Wenn Sie beispielsweise eine Variable zum Speichern des Namens einer Person deklarieren würden, deren Namen Sie aber nicht kennen, würden Sie die Variable auf null setzen. 🎜🎜Der undefinierte-Wert zeigt an, dass die Variable deklariert, aber noch kein Wert zugewiesen wurde. Er kann auch zurückgegeben werden, wenn undefinierte Eigenschaften und Methoden für das Objekt verwendet werden. Ersteres liegt daran, dass JavaScript-Variablen standardmäßig undefiniert sind, und letzteres liegt daran, dass JavaScript benutzerdefinierte Objekte zulässt, sodass Sie beliebige Eigenschaften und Methoden hinzufügen können. 🎜🎜Allerdings haben beide Methoden zur Darstellung nicht existierender Werte einige Nachteile. Erstens handelt es sich in JS um global gültige Variablen, was bedeutet, dass Sie die entsprechende Variable mithilfe von null oder undefiniert neu zuweisen können, was möglicherweise zu Fehlern und Inkonsistenzen führt. 🎜🎜Zweitens können sie keinen nicht existierenden Wert darstellen, sie können nur darstellen, dass die Variable auf keinen Wert oder Objekt zeigt. Dies ist eine wichtige Unterscheidung. Wenn Sie beispielsweise über ein Array verfügen, das jedoch keine Elemente enthält, können Sie null oder undefiniert nicht verwenden, um diese Situation anzuzeigen. Sie könnten ein leeres Array verwenden, dies ist jedoch keine gute Lösung, da es zu Redundanz und unnötiger Speichernutzung führt. 🎜🎜Daher verwenden Menschen in ihrem Code häufig andere Tricks, um das Fehlen von Werten anzuzeigen. Mit einer Technik namens „Kurzschlussauswertung“ können Sie mithilfe der Operatoren && und || prüfen, ob ein Wert vorhanden ist. Falls vorhanden, wird dieser Wert zurückgegeben, andernfalls wird ein Standardwert zurückgegeben. Wenn Sie beispielsweise über einige Daten verfügen, sich aber nicht sicher sind, ob ein Attribut namens „Alter“ darin enthalten ist, können Sie den Operator && verwenden, um Folgendes zu überprüfen: 🎜rrreee🎜Diese Anweisung prüft auf data.age existiert, falls vorhanden, weisen Sie es der Variablen age zu, andernfalls wird undefiniert zugewiesen (Sie können null, da dies <code>null fälschlicherweise als vorhandenen Wert behandeln könnte). 🎜🎜Ein weiterer Trick besteht darin, „Standardparameterwerte“ zu verwenden, was es Ihnen ermöglicht, einen Standardwert für eine Variable anzugeben, die verwendet werden soll, wenn die Variable nicht existiert. Zum Beispiel: 🎜rrreee🎜Dieser Funktionsparameter name ist standardmäßig auf 'Stranger' gesetzt, wenn der Parameter name nicht übergeben wird, oder Wird in null oder undefiniert übergeben, dann wird 'Stranger' verwendet. 🎜🎜Kurz gesagt: Obwohl JavaScripts null und undefiniert nicht existierende Werte darstellen können, bringt ihre Verwendung einige Nachteile und Einschränkungen mit sich. Seien Sie daher bei der Verwendung dieser Werte vorsichtig und versuchen Sie, das Fehlen von Werten mit anderen Methoden auszudrücken. 🎜

Das obige ist der detaillierte Inhalt vonJavascript bedeutet, dass es nicht existiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was ist Useffizität? Wie verwenden Sie es, um Nebenwirkungen auszuführen? Was ist Useffizität? Wie verwenden Sie es, um Nebenwirkungen auszuführen? Mar 19, 2025 pm 03:58 PM

In dem Artikel wird die Verwendung von UseEffect in React, einen Haken für die Verwaltung von Nebenwirkungen wie Datenabrufen und DOM -Manipulation in funktionellen Komponenten erläutert. Es erklärt die Verwendung, gemeinsame Nebenwirkungen und Reinigung, um Probleme wie Speicherlecks zu verhindern.

Erklären Sie das Konzept des faulen Ladens. Erklären Sie das Konzept des faulen Ladens. Mar 13, 2025 pm 07:47 PM

Lazy Ladeverzögerung des Ladens von Inhalten bis zur Bedarf, Verbesserung der Webleistung und Benutzererfahrung durch Reduzierung der anfänglichen Ladezeiten und des Serverlasts.

Wie funktioniert der React -Versöhnungsalgorithmus? Wie funktioniert der React -Versöhnungsalgorithmus? Mar 18, 2025 pm 01:58 PM

Der Artikel erläutert den Versöhnungsalgorithmus von React, der das DOM effizient aktualisiert, indem virtuelle DOM -Bäume verglichen werden. Es werden Leistungsvorteile, Optimierungstechniken und Auswirkungen auf die Benutzererfahrung erörtert.

Wie funktioniert das Currying in JavaScript und wie hoch sind ihre Vorteile? Wie funktioniert das Currying in JavaScript und wie hoch sind ihre Vorteile? Mar 18, 2025 pm 01:45 PM

In dem Artikel wird das Currying in JavaScript, einer Technik, die Multi-Argument-Funktionen in Einzelargument-Funktionssequenzen verwandelt. Es untersucht die Implementierung von Currying, Vorteile wie teilweise Anwendungen und praktische Verwendungen, Verbesserung des Code -Lesens

Was sind Funktionen höherer Ordnung in JavaScript und wie können sie verwendet werden, um prägnanter und wiederverwendbarer Code zu schreiben? Was sind Funktionen höherer Ordnung in JavaScript und wie können sie verwendet werden, um prägnanter und wiederverwendbarer Code zu schreiben? Mar 18, 2025 pm 01:44 PM

Funktionen höherer Ordnung in JavaScript verbessern die Übersichtlichkeit, Wiederverwendbarkeit, Modularität und Leistung von Code durch Abstraktion, gemeinsame Muster und Optimierungstechniken.

Was ist usecontext? Wie verwenden Sie es, um den Zustand zwischen Komponenten zu teilen? Was ist usecontext? Wie verwenden Sie es, um den Zustand zwischen Komponenten zu teilen? Mar 19, 2025 pm 03:59 PM

Der Artikel erläutert den Usecontext in React, was das staatliche Management durch Vermeidung von Prop -Bohrungen vereinfacht. Es wird von Vorteilen wie zentraler Staat und Leistungsverbesserungen durch reduzierte Neulehre erörtert.

Wie verbinden Sie React -Komponenten mit Connect () an den Redux -Store? Wie verbinden Sie React -Komponenten mit Connect () an den Redux -Store? Mar 21, 2025 pm 06:23 PM

In Artikel werden die Verbindungskomponenten an Redux Store mit Connect () verbinden, wobei MapStatetoprops, MapDispatchtoprops und Leistungsauswirkungen erläutert werden.

Wie verhindern Sie das Standardverhalten bei Ereignishandlern? Wie verhindern Sie das Standardverhalten bei Ereignishandlern? Mar 19, 2025 pm 04:10 PM

In Artikeln werden das Standardverhalten bei Ereignishandlern mithilfe von PURDDEFAULT () -Methoden, seinen Vorteilen wie verbesserten Benutzererfahrungen und potenziellen Problemen wie Barrierefreiheitsproblemen verhindern.

See all articles