Heim  >  Artikel  >  Web-Frontend  >  Bedingte Verzweigungen, die jeden Tag in den Javascript-Kenntnissen erlernt werden müssen

Bedingte Verzweigungen, die jeden Tag in den Javascript-Kenntnissen erlernt werden müssen

WBOY
WBOYOriginal
2016-05-16 15:15:07989Durchsuche

Hallo zusammen, wir haben heute kurz über Operatoren gesprochen. Die heutige Aufgabe besteht hauptsächlich darin, logische bedingte Verzweigungen und Schleifen zu erklären.
Lassen Sie uns zunächst einen Logikblock simulieren, mit dem wir oft in Kontakt kommen. Der Preis des Tickets ist für verschiedene Personen unterschiedlich, aber wir werden alle das gleiche Verhalten beim Ticketkauf durchführen als Funktion BuyTicket

//代码
function BuyTicket(){
  console.log("请付款200元");
}

Jeder hat gesehen, dass diese Funktion tatsächlich fehlerhaft ist. Wenn wir ein Ticket kaufen, können wir diese Funktion nicht nutzen Wir können nur eine weitere Funktion schreiben, um ein solches Problem zu lösen. Dann hat uns unsere Javascript-Sprache Verzweigungsanweisungen zur Verfügung gestellt, sodass wir solche Probleme leicht lösen können. Schauen wir uns den nächsten geänderten Code an 🎜>

function BuyTicket(identity){
  if(identity == "学生"){
    console.log("请付款100元");
  }
  if(identity == "军人"){
    console.log("请付款150元");
  }
  if(identity == "普通人"){
    console.log("请付款200元");
  }
}

//模拟3种人去买票
BuyTicket("学生");
BuyTicket("军人");
BuyTicket("普通人");

Ist die Verwendung auf diese Weise wissenschaftlicher als die vorherige Schreibweise? Ich werde sie später langsam verbessern und nach und nach wird jeder die Niedlichkeit des Programms verstehen.

Anhand des obigen Beispiels können wir leicht erkennen, dass eine solche Funktion das Verzweigungsproblem lösen kann


 if(条件){
  //执行语句
}
Die Bedingungen sind die, die wir zuvor erwähnt haben: nicht leere Objekte, nicht undefinierte Objekte, boolesche Werte wahr, Zahlen ungleich 0, alle Zeichenfolgen. In unserem Funktionskörper verwenden wir den Vergleichsoperator ==, um und zu operieren Um einen booleschen Wert zu erhalten, verwenden wir auch häufig andere Werte als Bedingungen. Hier ist ein weiteres Bild, das jeder verstehen kann

A: Die Bedingungen sind alle festgelegt, daher werden die Worte „ausgeführt“ gedruckt. B: Die Bedingungen sind nicht der qualifizierte Wert der if-Bedingung und werden daher nicht ausgeführt. Hinweis: Hier verwenden wir alle klare Werte nach der Operation, genau wie die Operation ==, die in der vorherigen BuyTicket-Funktion verwendet wurde. Wenn der Rückgabewert wahr ist ist Wenn es falsch ist, wird es definitiv nicht ausgeführt. Jedes Mal, wenn wir BuyTicket ausführen, kann der übergebene Wert nur eine Bedingung erfüllen.

Als nächstes lernen wir den vollständigen if-Zweig


//第一种,两个分支
if(条件){
  //执行
}else{
  //执行
}
Gehen Sie einfach auf das Bild und Sie werden es sofort verstehen

A: Der vorherige Code wird ausgeführt; die Bedingung bei B ist nicht qualifiziert, daher wird die Anweisung im else-Block ausgeführt. Es ist sehr einfach und bedarf keiner großen Erklärung.

Bei zwei Zweigen wird immer einer der beiden Zweige ausgeführt, nicht beide gleichzeitig


//第二种,多个分支
if(条件){
  //执行
}else if(条件){
  //执行
}else if(条件){
  //执行
}…else if(条件){
  //执行
}else{
  //执行
}
Bei mehreren Zweigen wird nur einer davon ausgeführt. Der folgende Bedingungsvergleich wird nicht fortgesetzt. Dies ist eine effizientere Methode Seien Sie wie die BuyTicket-Funktion oben, was eine sehr ineffiziente Schreibweise ist. Die drei if-Blöcke werden also verglichen. Wir können also die BuyTicket-Funktion umwandeln


Diese Art des Schreibens ist wissenschaftlicher und der Ausführungseffekt ist der gleiche wie zuvor. Wenn die Bedingungen erfüllt sind, sind sie hoch wird ausgeführt, ohne dass andere Bedingungsblöcke übereinstimmen. Dies ist effizienter als der zuvor geschriebene Funktionscode. Es gibt jedoch auch eine alternative Schreibmethode mit mehreren Zweigen, die Switch-Struktur
//代码 
funciton BuyTicket(identity){
  if("学生"){
    console.log("请付款100元");
  }else if("军人"){
    console.log("请付款150元");
  }else{
    console.log("请付款200元");
  }
}


Der Ausführungsprozess von oben nach unten besteht darin, Ausdrücke zu verwenden, um die folgenden konstanten Ausdrücke nacheinander abzugleichen. Wenn sie übereinstimmen, führen Sie die darin enthaltenen Anweisungen aus. Andernfalls fügen Sie die Anweisungen in ein Die nachfolgenden Case-Blöcke werden nacheinander ausgeführt, bis Break auftritt, sodass wir diese Funktion auch nutzen können. Unter geeigneten Umständen schreiben wir das Schlüsselwort break nicht. Okay, verwenden wir zunächst die Schalterstruktur, um die vorherige BuyTicket-Funktion
zu ändern
switch(表达式){
  case 常量表达式1:
    //执行
    break;
  case 常量表达式1:
    //执行
    break;
  case 常量表达式1:
    //执行
    break;
  default:
    //执行
    break;
}


Der Standardblock bedeutet, dass wir diesen Codeblock standardmäßig ausführen, wenn kein Ausdruck übereinstimmt. Da dies auch der letzte Codeblock ist, kann das Schlüsselwort break auch weggelassen werden

Zusammenfassend habe ich heute nur über bedingte Verzweigungen und anderes Wissen gesprochen: if, if--else, if--else, if--else, switch. Dies sind nur einige bedingte Verzweigungsanweisungen, die ich extrahieren kann Sie haben jeden Tag eine gewisse Zeit zum Schreiben und der Platz ist begrenzt. Okay, lassen Sie uns das zuerst verdauen, und wir werden mit dem nächsten Artikel fortfahren.

Stellungnahme:
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