条件文、文字列

12152 ワード

条件文


1.比較演算子


  • 一致(====)と等しい(==)演算子
    =====(厳密に比較)type、両方が一致(比較前のtypeが一致)し、内容のみ比較
  • このとき、疑問が生じる.同じ比較を行うには、どのような演算子を使用しますか?
    一致演算子の使用を推奨理由は以下の画像で説明します.
  • === Comparision Table - リファレンス
    タイプと値が一致している場合のみ、下図のように判別できるA === B
  • 같다 Comparision Table
    ただし、(A == B)演算子を使用する場合、typeが異なっても値が近ければ等しいとみなされます.


  • それ以外は
  •   A === B // 일치 연산자
      A !== B // 불일치 연산자
      A >== B // A는 B 이상 인가?
      A < B // A는 B 미만 인가?

    2.同じタイプの人に比べて!!


    異なるタイプ間の比較は間違っています.
    ただし、文字列vs数字を比較することもできます.
    '123' > 2; // true
    '123' < 2; // false
    いったいどんな基準で測るのか.
    まず、数値を文字列タイプに変換し、文字列間で比較します.
    文字列間の比較演算を辞書式(語彙)比較と呼ぶ.
    'a' > 'b'; // false
    'a' > 'b'; // true
    エラーは発生しません.
    正確な比較を行う前に、タイプを検証して変換する必要があります.

    3.論理演算子

      && // and
      || // or
      ! // NOT
    

    4.文法


    if~else文法は==であることを忘れないでください.
      if (조건1) {
        // 조건1 (o)
      }
      else if (조건2) { 
        // 조건1 (x), 조건 2 (o) 
      }
      else { 
        // 나머지
        // 조건1 (x), 조건 2 (x) 
      }

    5. falsy? falseとは違いますか?


  • falsey:falseとしての価格

  • 覚えておきたい6つのfalsey値택 1falsenullundefined0(空文字列)、NaN : Not a number
  • ''デュアルNOT演算子NaNto!!
  • !undefined //true ← not - undefined를 false로 취급 (falsy)
    !"Hello" // false ← !(truthy)
    
    if(""===false){ // falsy === false 는 거짓.
      console.log("hello") // 출력값 없음.
    }
    
    if(!!""===false){ // !!(falsy) is false
      console.log("hello") // "hello" 출력.
    }

    文字列のプロパティとメソッド


    デフォルトでは、不変(不変)メソッド

    1. Slicing


    readonly

  • index
    positive012...str.length - 1negatve- str.length...-2-1
  • falsy|文字列長
  • false|単回抽出
  •     str[index] = "c" // error! because of readonly!
    
        // 대신, 문자열 내부 값 변경하는 방법
        // (immutable)  첫 일치 문자 치환
        str.replace(removedSubStr, newSubStr) 

  • 範囲抽出str.lengthstr[index]負のパラメータok start idx
  • 2. Useful methods

    typeof( str + other type ) //= str  (배열도 가능)
    str.concat(A, B, ...) // 성능면에서 할당 연산자 (+=) faster
    str.indexOf(searchValue) // 처음으로 일치하는 index, 없으면 -1
    str.lastIndexOf(searchValue) // 뒤에서부터 일치하는 index, 없으면 -1
    str.includes(searchValue) // 존재하는지 true or false
    str.split(seperator) // '공백없음' : 한글자씩, '공백' : 단어마다
    str.toLowerCase(), str.toUpperCase() // 
    str.trim() // 양끝의 공백을 제거
    str.repeat(num) // 횟수만큼 반복

    3. Array ↔ string

  • methodstr.slice(start_idx [, end_idx]) & str.substring(start_idx [, end_idx])
  •   str = '123';
    
      //분리
      arr = str.split(""); // ['1', '2', '3']
    
      //재결합
      concatStr = arr.join("-") // "1-2-3"

    4. Template literals


    カニ変数と文字列を同時に入力する場合、(+)演算子を使用すると入力が不便になります.
    consoel.log( 'target:' + target + ', action:' + action)
    ただし、使用str.split("")より簡単に入力できます.
    ※キーボード[~]と一緒に使用するbasic(`)に注意
    console.log(`target:${target}, action${action}`)

    取り外したクリップ


    条件文


    11 isEtherEvenAndLessthan 9//if&else選択日
    12 ConvertScoreToGrade//異常前処理