Tipps und Tricks in Javascript

Lassen Sie uns in diesem Artikel einige Tipps und Tricks zu Javascript behandeln, die jeder kennen sollte.

In Boolean umwandeln

Alle Werte in Javascript sind truthyaußer 0, "", null, undefined, NaNund natürlich false.

Wir können leicht zwischen trueund falsemit dem negativen Operator ( !) wechseln , der auch den Typ in boolean umwandelt .

  1. <code><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="o">!</span><span class="mi">0</span><span class="p">);</span> <span class="c1">//true</span>
  2. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="o">!</span><span class="mi">1</span><span class="p">);</span> <span class="c1">//false</span>
  3. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="o">!!</span><span class="mi">0</span><span class="p">);</span> <span class="c1">//false</span>
  4. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="o">!</span><span class="kc">undefined</span><span class="p">);</span> <span class="c1">//true</span>
  5. </code>
<code><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="o">!</span><span class="mi">0</span><span class="p">);</span> <span class="c1">//true</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="o">!</span><span class="mi">1</span><span class="p">);</span> <span class="c1">//false</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="o">!!</span><span class="mi">0</span><span class="p">);</span> <span class="c1">//false</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="o">!</span><span class="kc">undefined</span><span class="p">);</span> <span class="c1">//true</span>
</code>

Erstaunlich, oder?

In Zahl umwandeln

Die Umwandlung in eine Zahl kann einfach mit dem Additionsoperator ( +) erreicht werden.

  1. <code><span class="kd">let</span> <span class="nx">num</span> <span class="o">=</span> <span class="dl">"</span><span class="s2">10</span><span class="dl">"</span><span class="p">;</span>
  2. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">num</span><span class="p">);</span> <span class="c1">// "10"</span>
  3. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="k">typeof</span> <span class="nx">num</span><span class="p">);</span> <span class="c1">// "string"</span><font></font>
  4. <font></font>
  5. <span class="nx">num</span> <span class="o">=</span> <span class="o">+</span><span class="nx">num</span><span class="p">;</span><font></font>
  6. <font></font>
  7. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">num</span><span class="p">);</span> <span class="c1">// 10</span>
  8. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="k">typeof</span> <span class="nx">num</span><span class="p">);</span> <span class="c1">// "number"</span>
  9. </code>
<code><span class="kd">let</span> <span class="nx">num</span> <span class="o">=</span> <span class="dl">"</span><span class="s2">10</span><span class="dl">"</span><span class="p">;</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">num</span><span class="p">);</span> <span class="c1">// "10"</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="k">typeof</span> <span class="nx">num</span><span class="p">);</span> <span class="c1">// "string"</span><font></font>
<font></font>
<span class="nx">num</span> <span class="o">=</span> <span class="o">+</span><span class="nx">num</span><span class="p">;</span><font></font>
<font></font>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">num</span><span class="p">);</span> <span class="c1">// 10</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="k">typeof</span> <span class="nx">num</span><span class="p">);</span> <span class="c1">// "number"</span>
</code>

Wie cool ist das?

Schnelles Floaten zu Integer

Es gibt mehrere Möglichkeiten, Float mithilfe von Math.floor(), Math.ceil()oder in eine Ganzzahl zu konvertieren Math.round(), aber es gibt auch eine schnellere Möglichkeit, eine Float mithilfe des bitweisen OR-Operators ( |) in eine Ganzzahl zu konvertieren .

  1. <code><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="mf">11.5</span> <span class="o">|</span> <span class="mi">0</span><span class="p">);</span> <span class="c1">// 11</span>
  2. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="o">-</span><span class="mf">11.5</span> <span class="o">|</span> <span class="mi">0</span><span class="p">);</span> <span class="c1">// -11</span>
  3. </code>
<code><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="mf">11.5</span> <span class="o">|</span> <span class="mi">0</span><span class="p">);</span> <span class="c1">// 11</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="o">-</span><span class="mf">11.5</span> <span class="o">|</span> <span class="mi">0</span><span class="p">);</span> <span class="c1">// -11</span>
</code>

Beeindruckend! Erstaunlich, oder? Ich habe angefangen, das jetzt häufiger zu verwenden.

Kurzschlussauswertung

&& verwenden

Mit &&wird der erste falseoder falsyWert zurückgegeben. Wenn erwartet wird, dass jeder Operand ist true, wird der zuletzt ausgewertete Ausdruck zurückgegeben.

  1. <code><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="kc">true</span> <span class="o">&&</span> <span class="kc">true</span> <span class="o">&&</span> <span class="mi">2</span><span class="p">);</span> <span class="c1">// 2</span>
  2. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="kc">true</span> <span class="o">&&</span> <span class="kc">false</span> <span class="o">&&</span> <span class="mi">2</span><span class="p">);</span> <span class="c1">// false</span>
  3. </code>
<code><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="kc">true</span> <span class="o">&&</span> <span class="kc">true</span> <span class="o">&&</span> <span class="mi">2</span><span class="p">);</span> <span class="c1">// 2</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="kc">true</span> <span class="o">&&</span> <span class="kc">false</span> <span class="o">&&</span> <span class="mi">2</span><span class="p">);</span> <span class="c1">// false</span>
</code>

Verwenden von ||

Mit ||dem ersten Rückkehr truevon truthyWert. Wenn erwartet wird, dass jeder Operand ist false, wird der zuletzt ausgewertete Ausdruck zurückgegeben.

  1. <code><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="kc">true</span> <span class="o">||</span> <span class="kc">false</span> <span class="o">||</span> <span class="mi">2</span><span class="p">);</span> <span class="c1">// true</span>
  2. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="kc">false</span> <span class="o">||</span> <span class="kc">false</span> <span class="o">||</span> <span class="mi">2</span><span class="p">);</span> <span class="c1">// 2</span>
  3. </code>
<code><span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="kc">true</span> <span class="o">||</span> <span class="kc">false</span> <span class="o">||</span> <span class="mi">2</span><span class="p">);</span> <span class="c1">// true</span>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="kc">false</span> <span class="o">||</span> <span class="kc">false</span> <span class="o">||</span> <span class="mi">2</span><span class="p">);</span> <span class="c1">// 2</span>
</code>

Die Kurzschlussauswertung ist in jeder Programmiersprache weit verbreitet.

Filtern Sie eindeutige Werte aus einem Array

Sie können eindeutige Werte mithilfe der SetDatenstruktur leicht finden . Das Set wurde in ES6 zusammen mit dem Spread-Operator ( ...) eingeführt. Lassen Sie uns beide das neue Konzept verwenden, um eindeutige Werte eines Arrays zu filtern.

Ich weiß, dass du das oft benutzen wirst. Sie können mir später danken. 😄

  1. <code><span class="kd">let</span> <span class="nx">arr</span> <span class="o">=</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">6</span><span class="p">];</span>
  2. <span class="kd">const</span> <span class="nx">uniqueArr</span> <span class="o">=</span> <span class="p">[...</span><span class="k">new</span> <span class="nb">Set</span><span class="p">(</span><span class="nx">arr</span><span class="p">)];</span><font></font>
  3. <font></font>
  4. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">uniqueArr</span><span class="p">);</span> <span class="c1">// [ 1, 2, 3, 4, 5, 6 ]</span>
  5. </code>
<code><span class="kd">let</span> <span class="nx">arr</span> <span class="o">=</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">6</span><span class="p">];</span>
<span class="kd">const</span> <span class="nx">uniqueArr</span> <span class="o">=</span> <span class="p">[...</span><span class="k">new</span> <span class="nb">Set</span><span class="p">(</span><span class="nx">arr</span><span class="p">)];</span><font></font>
<font></font>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">uniqueArr</span><span class="p">);</span> <span class="c1">// [ 1, 2, 3, 4, 5, 6 ]</span>
</code>

Selbstanruffunktion oder IIFE

IIFE - Sofort aufgerufener Funktionsausdruck

Dies wird oft als selbstaufgerufene anonyme Funktion oder IIFE bezeichnet . Es ist eine Funktion, die automatisch ausgeführt wird, wenn sie erstellt wird.

  1. <code><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
  2. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="dl">"</span><span class="s2">I am running automatically</span><span class="dl">"</span><span class="p">);</span>
  3. <span class="p">})();</span><font></font>
  4. <font></font>
  5. <span class="c1">//I am running automatically</span>
  6. </code>
<code><span class="p">(</span><span class="kd">function</span> <span class="p">()</span> <span class="p">{</span>
  <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="dl">"</span><span class="s2">I am running automatically</span><span class="dl">"</span><span class="p">);</span>
<span class="p">})();</span><font></font>
<font></font>
<span class="c1">//I am running automatically</span>
</code>

Sie können mehr über lesen IIFE hier .

Holen Sie sich ein zufälliges Element aus einem Array

Wir können Math.random()und Math.floor()-Methoden verwenden, um ein zufälliges Element aus einem Array zu erhalten.

  1. <code><span class="kd">let</span> <span class="nx">names</span> <span class="o">=</span> <span class="p">[</span><span class="dl">"</span><span class="s2">Pratap</span><span class="dl">"</span><span class="p">,</span> <span class="dl">"</span><span class="s2">Prasar</span><span class="dl">"</span><span class="p">,</span> <span class="dl">"</span><span class="s2">Sudip</span><span class="dl">"</span><span class="p">,</span> <span class="dl">"</span><span class="s2">Shiva</span><span class="dl">"</span><span class="p">];</span><font></font>
  2. <font></font>
  3. <span class="kd">let</span> <span class="nx">randomName</span> <span class="o">=</span> <span class="nx">names</span><span class="p">[</span><span class="nb">Math</span><span class="p">.</span><span class="nx">floor</span><span class="p">(</span><span class="nb">Math</span><span class="p">.</span><span class="nx">random</span><span class="p">()</span> <span class="o">*</span> <span class="nx">names</span><span class="p">.</span><span class="nx">length</span><span class="p">)];</span>
  4. </code>
<code><span class="kd">let</span> <span class="nx">names</span> <span class="o">=</span> <span class="p">[</span><span class="dl">"</span><span class="s2">Pratap</span><span class="dl">"</span><span class="p">,</span> <span class="dl">"</span><span class="s2">Prasar</span><span class="dl">"</span><span class="p">,</span> <span class="dl">"</span><span class="s2">Sudip</span><span class="dl">"</span><span class="p">,</span> <span class="dl">"</span><span class="s2">Shiva</span><span class="dl">"</span><span class="p">];</span><font></font>
<font></font>
<span class="kd">let</span> <span class="nx">randomName</span> <span class="o">=</span> <span class="nx">names</span><span class="p">[</span><span class="nb">Math</span><span class="p">.</span><span class="nx">floor</span><span class="p">(</span><span class="nb">Math</span><span class="p">.</span><span class="nx">random</span><span class="p">()</span> <span class="o">*</span> <span class="nx">names</span><span class="p">.</span><span class="nx">length</span><span class="p">)];</span>
</code>

Es ist auch einer der am häufigsten verwendeten Tricks.

Primitive Operationen können schneller sein als Funktionsaufrufe

Denken Sie daran, dass primitive Operationen schneller sein können als Funktionsaufrufe.

Anstatt zu verwenden

  1. <code><span class="kd">const</span> <span class="nx">min</span> <span class="o">=</span> <span class="nb">Math</span><span class="p">.</span><span class="nx">min</span><span class="p">(</span><span class="nx">a</span><span class="p">,</span> <span class="nx">b</span><span class="p">);</span>
  2. </code>
<code><span class="kd">const</span> <span class="nx">min</span> <span class="o">=</span> <span class="nb">Math</span><span class="p">.</span><span class="nx">min</span><span class="p">(</span><span class="nx">a</span><span class="p">,</span> <span class="nx">b</span><span class="p">);</span>
</code>

verwenden

  1. <code><span class="kd">const</span> <span class="nx">min</span> <span class="o">=</span> <span class="nx">a</span> <span class="o"><</span> <span class="nx">b</span> <span class="p">?</span> <span class="nx">a</span> <span class="p">:</span> <span class="nx">b</span><span class="p">;</span>
  2. </code>
<code><span class="kd">const</span> <span class="nx">min</span> <span class="o">=</span> <span class="nx">a</span> <span class="o"><</span> <span class="nx">b</span> <span class="p">?</span> <span class="nx">a</span> <span class="p">:</span> <span class="nx">b</span><span class="p">;</span>
</code>

Leere ein Array

Sie können ein Array mit der array.lengthEigenschaft leeren .

  1. <code><span class="kd">let</span> <span class="nx">dumarray</span> <span class="o">=</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">6</span><span class="p">,</span> <span class="mi">7</span><span class="p">];</span>
  2. <span class="nx">dumarray</span><span class="p">.</span><span class="nx">length</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span><font></font>
  3. <font></font>
  4. <span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">dumarray</span><span class="p">);</span> <span class="c1">// []</span>
  5. </code>
<code><span class="kd">let</span> <span class="nx">dumarray</span> <span class="o">=</span> <span class="p">[</span><span class="mi">1</span><span class="p">,</span> <span class="mi">1</span><span class="p">,</span> <span class="mi">2</span><span class="p">,</span> <span class="mi">3</span><span class="p">,</span> <span class="mi">4</span><span class="p">,</span> <span class="mi">5</span><span class="p">,</span> <span class="mi">6</span><span class="p">,</span> <span class="mi">7</span><span class="p">];</span>
<span class="nx">dumarray</span><span class="p">.</span><span class="nx">length</span> <span class="o">=</span> <span class="mi">0</span><span class="p">;</span><font></font>
<font></font>
<span class="nx">console</span><span class="p">.</span><span class="nx">log</span><span class="p">(</span><span class="nx">dumarray</span><span class="p">);</span> <span class="c1">// []</span>
</code>

Etwas zusammenfassen

Das ist es aus diesem Artikel. Ich hoffe, ich konnte Ihnen mit den besten Javascript-Tipps und -Tricks helfen.

💌 Wenn Sie möchten , um mehr Tutorials in Ihrem Posteingang erhalten, können Sie sich für den Newsletter anmelden hier .

Bitte zögern Sie nicht, hier einen Kommentar zu hinterlassen, wenn ich etwas vermisse. Lassen Sie mich auch wissen, ob ich den Beitrag verbessern kann.

vConsole
12:45:12
Uncaught TypeError: Cannot read properties of null (reading 'style')
/andere/index.php?name=Tipps_und_tricks_in_Javascript.php&ordner=andere:2751:53
12:45:12
WeChatLib: 0 (xxxx.xx.xx)
12:45:13
System: Unknown
12:45:13
Protocol: HTTPS
12:45:13
UA: Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
12:45:13
navigationStart: 1743943511427
12:45:13
navigation: 7ms
12:45:13
dns: 102ms
12:45:13
tcp (ssl): 238ms (129ms)
12:45:13
request: 220ms
12:45:13
response: 58ms
12:45:13
domComplete (domLoaded): 1565ms (1488ms)
12:45:13
loadEvent: 16ms
12:45:13
total (DOM): 2152ms (2136ms)