Heim > Web-Frontend > js-Tutorial > Hauptteil

Detaillierte Erklärung zur Verwendung von Operatoren, Operator und {} in Javascript

伊谢尔伦
Freigeben: 2017-07-18 14:01:39
Original
1128 Leute haben es durchsucht

1. Verwenden Sie gängige ternäre Operatoren

if (foo) bar(); else baz(); ==> foo?bar():baz();
if (!foo) bar(); else baz(); ==> foo?baz():bar();
if (foo) return bar(); else return baz(); ==> return foo?bar():baz();
Nach dem Login kopieren

Sie werden sicherlich mit der oben genannten Verwendung ternärer Operatoren zur Optimierung von if-Anweisungen vertraut sein, vielleicht verwenden Sie sie oft.

<script>
var i=9
var ii=(i>8)?100:9;
alert(ii);
</script>
Nach dem Login kopieren

Ausgabeergebnis:

100

2. Verwenden Sie die Operatoren and(&&) und or(||)

if (foo) bar(); ==> foo&&bar();
if (!foo) bar(); ==> foo||bar();
Nach dem Login kopieren

3. Lassen Sie die geschweiften Klammern weg {}

if (foo) return bar(); else something(); ==> {if(foo)return bar();something()}
Nach dem Login kopieren

Sie und ich sind mit dieser Schreibmethode vertraut. Es wird empfohlen, dies bei der Optimierung des Codes zu tun Überlassen Sie es UglifyJS, Ihnen bei der Lösung zu helfen. Denn wenn eine geschweifte Klammer fehlt, ist die Lesbarkeit des Codes nicht gut.

Als ich dies schrieb, dachte ich an eine Methode zum Erhalten von HTML-Elementattributen in „Mastering JavaScript“ vom Vater von jQuery.

function getAttr(el, attrName){
var attr = {&#39;for&#39;:&#39;htmlFor&#39;, &#39;class&#39;:&#39;className&#39;}[attrName] || attrName;
};
Nach dem Login kopieren

Wenn wir es nicht auf diese Weise schreiben, müssen wir möglicherweise zwei if-Anweisungen verwenden, um es zu verarbeiten. Der obige Code ist nicht nur prägnant und effektiv, sondern auch gut lesbar.

Wenn Sie sorgfältig darüber nachdenken, können wir oft effektive Wege finden, um Probleme zu lösen, aber der Schlüssel liegt darin, ob wir unser Herz einsetzen, um einen besseren Weg zu finden.

[Javascript-Kenntnisse] if(x==null) Abkürzung

if (x==null) oder if (typeof (x) == 'undefiniert') Es kann als if(!x) abgekürzt werden, was nicht verifiziert ist.

Im Gegenteil, wenn (x) bedeutet, dass x nicht leer ist

Beurteilen Sie, ob das Objekt existiert

if(document.form1.softurl9){
//判断是否存在softurl9,防止js出错
}
Nach dem Login kopieren
if(document.getElementById("softurl9")){
//判断是否存在softurl9,防止js出错
}
Nach dem Login kopieren


Ergänzung:

Javascript || && Abkürzung, wenn

<script type="text/javascript"> 
    如果你想写 
    if (!false) 
    { 
        alert(&#39;false&#39;); 
    } 
    不妨考虑写成: 
    false || alert(&#39;false&#39;); 
    false || alert(&#39;false&#39;); true || alert(&#39;true&#39;); //output false; 
    用"||"的情况下,第一个条件true,不检测第二个直接返回true.第一个条件false,会执行第二个条件检测 
    false && alert(&#39;false&#39;); true && alert(&#39;true&#39;); //output true 
    用"&&"的情况下,第一个条件true,还会检测第二个条件。第一个条件false,直接返回false退出。 
    简而言之, 替换 if 的简单实用, ? : 替换 if else的实用。 写短小精悍的代码 
    usage: 
    $("#regform input[type!=hidden]").each( 
        function(index) { 
            $(this).parent().has("p.valid-under").length || $(&#39;<p class="valid-under"></p>&#39;).appendTo($(this).parent()); 
        } 
    );   
</script>
Nach dem Login kopieren


Das obige ist der detaillierte Inhalt vonDetaillierte Erklärung zur Verwendung von Operatoren, Operator und {} in Javascript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!