ホームページ  >  記事  >  ウェブフロントエンド  >  javascript_javascript スキルで毎日学習する必要がある条件分岐

javascript_javascript スキルで毎日学習する必要がある条件分岐

WBOY
WBOYオリジナル
2016-05-16 15:15:071042ブラウズ

皆さんこんにちは。今日は演算子について簡単に説明しました。今日のタスクは主に論理的な条件分岐とループについて説明します。
まずロジックブロックをシミュレートしてみましょう。チケットの価格は人によって異なりますが、チケットを購入するという同じ動作を記述できます。関数として BuyTicket

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

この関数本体には実際には欠陥があることを誰もが知っています。私たちがチケットを購入するときに、この関数を実行する場合、この関数は割引が適用されません。このような問題を解決するには、もう 1 つの関数を作成するだけです。JavaScript 言語には分岐ステートメントが用意されているので、このような問題を簡単に解決できます。次の変更されたコードを見てみましょう。 🎜>

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

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

この方法で使用することは、以前の書き方よりも科学的でしょうか? 今後、ゆっくりとアップグレードしていき、徐々にプログラムの魅力を理解してもらえるようにしていきます。

上記の例を通して、このような関数が分岐の問題を解決できることが簡単にわかります。次に、if 分岐構文を説明しましょう。


 if(条件){
  //执行语句
}
条件は、前述したように、空でないオブジェクト、未定義でないオブジェクト、ブール値 true、0 以外の数値、すべての文字列です。関数本体では、== 比較演算子を使用して演算します。ブール値を取得します。これは、他の値を条件として使用することもできます。

A: 条件はすべて確立されているため、「実行されました」という文字が出力されます。B: 条件は if 条件の修飾値ではないため、実行されません。注: ここではすべてクリア値を使用しています。前の BuyTicket 関数で使用した == 操作と同じように、操作の後に戻り値を使用することもあります。戻り値が true の場合、その値が実行されます。 false の場合、BuyTicket を実行するたびに、渡される値は 1 つの条件のみを満たすことができます。

次に、完全な if 分岐を学習しましょう


//第一种,两个分支
if(条件){
  //执行
}else{
  //执行
}
写真を見ればすぐにわかります

A: 前のコードが実行されます。B の条件は修飾されていないため、else ブロック内のステートメントが実行されます。とてもシンプルで、多くの説明は必要ありません。

2 つのブランチの場合、両方が同時に実行されるのではなく、常に 2 つのブランチのうちの 1 つが実行されます


//第二种,多个分支
if(条件){
  //执行
}else if(条件){
  //执行
}else if(条件){
  //执行
}…else if(条件){
  //执行
}else{
  //执行
}
複数の分岐がある場合、いずれかの分岐が実行されると、次の条件比較は続行されません。単純に if ブロックを記述した方が効率的です。上記の BuyTicket 関数と似ていますが、これは非常に非効率的な記述方法です。そのため、BuyTicket 関数

を変換できます。

//代码 
funciton BuyTicket(identity){
  if("学生"){
    console.log("请付款100元");
  }else if("军人"){
    console.log("请付款150元");
  }else{
    console.log("请付款200元");
  }
}
この書き方はより科学的であり、実行効果は以前と同じです。条件が 1 つずつ一致する場合、実行効率が高くなります。これは、以前に記述した関数コードよりも効率的ですが、最初に構文を見てみましょう。


switch(表达式){
  case 常量表达式1:
    //执行
    break;
  case 常量表达式1:
    //执行
    break;
  case 常量表达式1:
    //执行
    break;
  default:
    //执行
    break;
}
上から下への実行のプロセスでは、式を使用して次の定数式を 1 つずつ照合します。一致しない場合は、中のステートメントを各 case ブロックの後に忘れずに追加します。後続の case ブロックは、break が検出されるまで順次実行されるため、適切な状況では、break キーワードを記述しなくても、この機能を利用できます。さて、まずスイッチ構造を使用して前の BuyTicket 関数を変更しましょう


デフォルト ブロックは、一致する式がない場合にデフォルトでこのコード ブロックを実行することを意味します。これは最後のコード ブロックでもあるため、break キーワードも省略できます。

要約すると、今日は条件分岐とその他の知識、if、if--else、if--else、switch についてのみ話しました。書くにはある程度の時間があり、スペースは限られています。次の記事は執筆サイクルについてです。それでは、次の記事に進みます。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。