48日目-給油、スイッチドア


週末を迎えて、復習の時間ができた。今日整理するテーマはテーマと同じhoistingとswitch文です。


面接でもよく聞かれる重要な概念の一つだそうです。


昇格はvar変数またはfunction declaration(関数宣言)が自動的に最上位に上昇すると考えられます.エスケープ後、コードは表示される順序で自動的に実行されます.
たとえば、関数式に2つのパラメータを加えて出力する式を以下に示すと、エラーメッセージが表示されます.
add(1, 2);
let add = function(a, b) {
    console.log(a+b)}; // ReferenceError: add is not defined
関数式はプラス記号ではないので、最初の行でadd(1,2)を実行する必要がありますが、まだadd関数を表していないため、参照できません.
add式を関数宣言式に変更すると、
add(1, 2); // 3
function add(a, b) {
    console.log(a+b)}; 
3の結果を出力します.関数宣言式は最上位の信号を自動的に生成するからです.
JAvaスクリプトは、以下に示すように、上記のコードを読み出します.
function add(a, b) {
    console.log(a+b)};
add(1, 2); // 3

switch文は複素if条件文を美しくする役割を果たす.


switch文は、1つ以上のcase文から構成されます.またdefault文もあります.これはcaseに合致するデフォルト設定がない場合にデフォルト設定する方法で、if文の最後のelse文と見なすと便利です.
let age = 27

if(age > 19 ) {
    alert( "22시 이후에도 피씨방을 이용할 수 있습니다." );
  } else if( age < 19 ){
    alert( "22시가 되었으니 귀가해주시기 바랍니다." );
  } else {
    alert( "둘 다 아니라면 올해 19세가 되셨겠군요." );
}
このようにネットカフェで目覚まし時計の窓を作ったと思ってください.(最後の文はage=19でdefaultを表示できますが、置き換えて入れました.)
上のifゲートが運行された後、ageは19以上で、「22時以降もネットカフェを利用できます.」こんな文が出てきます.
テーマに変えて
let age = 27

switch (age) {
  case ( age > 19 ):
   alert( "22시 이후에도 피씨방을 이용할 수 있습니다." );
   break;
 case( age < 19 ):
   alert( "22시가 되었으니 귀가해주시기 바랍니다." );
   break;
 default:
   alert( "둘 다 아니라면 올해 19세가 되셨겠군요." );
}
つまり、このような方法でも可能だ.