TIL no.16-JS 3項演算子と単純条件文
条件文 if(조건식){
// 실행문
} else if {
// 실행문
} else {
// 실행문
}
これはプログラミングの核心です.条件文です!
上から、条件が一致しているかどうかを個別にチェックし、すべての条件が満たされていない場合に構文を作成できます.
false、undefined、null、0、NaN、および空の文字列は、条件文でfalseと判断される.
さんこうえんざんし
条件文の構文を1行で簡単に表すことができます.
条件文実行文(True):実行文(else)console.log(age > 19 ? '성인입니다.' : '미성년자입니다.');
年齢が19歳以上の場合、「成人」でなければ「未成年」という条件文が出てくる.
本当に簡潔できれいです
オーバーラップ
3つの演算子はif文のように内部で重複して記述することもできます.const 조건1 = false;
const 조건2 = undefined;
const el = 조건1
? '프론트엔드'
: 조건2
? '백엔드'
: '풀스택';
console.log(el);
上のように重ねて使えますが、見るとめまいがします.このような可読性の悪い文はできるだけ書かないほうがいい.
if文と3つの演算子の違い
1.割当て
let hpMsg = hp <= 0 ? '체력이 없습니다.' : `현재 체력이 '${hp}'입니다.`
3つの演算子は、条件の結果値を変数に直接割り当てることができます.if文は変数に直接割り当てることはできません.
2. scope
if文は括弧で囲まれたブロック文で構成され、3つの演算子はブロック文を生成できません.だから.
グローバル変数は参照できますが、ゾーン変数は作成できません.
このような違いがあるため,if文の代わりに盲目的に3つの演算子を用いるべきではない.これらの違いを理解し、適切に使用することが望ましい.
単純な条件文
論理演算子&&&|を使用して、短い条件文を記述できます.
私の場合、通常は複数の条件をリストする必要がある場合に使用します.
&&
A&B、A、B.ドアが実行される場合は、すべての制約条件が本物でなければなりません.let apple = prompt("사과인가요?");
let banana = prompt("바나나인가요?");
if (apple === "네" && banana === "네") {
console.log("과일입니다.");
} else {
console.log("과일이 아닌게 있습니다.");
}
||
A||B、AまたはB.1つの条件が本当であってもif文は実行されます.if (answer === "수원" || answer === "오산" || answer === "병점") {
console.log("가까우시네요.");
} else {
console.log("멀리 사네요.")
}
&&,‖併用すると?
if (age > 16 || age < 20 && edu === "고등학교")
説明すると、年齢は16歳か20歳以下で高校に通う.
if(조건식){
// 실행문
} else if {
// 실행문
} else {
// 실행문
}
console.log(age > 19 ? '성인입니다.' : '미성년자입니다.');
const 조건1 = false;
const 조건2 = undefined;
const el = 조건1
? '프론트엔드'
: 조건2
? '백엔드'
: '풀스택';
console.log(el);
let hpMsg = hp <= 0 ? '체력이 없습니다.' : `현재 체력이 '${hp}'입니다.`
let apple = prompt("사과인가요?");
let banana = prompt("바나나인가요?");
if (apple === "네" && banana === "네") {
console.log("과일입니다.");
} else {
console.log("과일이 아닌게 있습니다.");
}
if (answer === "수원" || answer === "오산" || answer === "병점") {
console.log("가까우시네요.");
} else {
console.log("멀리 사네요.")
}
if (age > 16 || age < 20 && edu === "고등학교")
(16歳以上)(20歳以下高校)
if (age > 16 || (age < 20 && edu === "고등학교"))
じゃんけんゲーム
論理演算子を用いた条件文でじゃんけんゲームをした
let arr = ["가위", "바위", "보"]
let com
let play = document.querySelectorAll('.btn');
let my = document.querySelector('.player')
let computer = document.querySelector('.computer');
let gameResult = document.querySelector('.winner');
// 컴퓨터 가위바위보 선택
function random() {
let ran = Math.floor(Math.random() * 3); // ran 값은 0,1,2 랜덤 추출
com = arr[ran];
}
function result( com , player ) { // 게임 결과 판단
if( player == com){
gameResult.textContent = "무승부"
} else if((player == "가위" && com == "보")
|| ((player == "바위" && com == "가위")
) || (player == "보" && com == "바위")) {
gameResult.textContent = "승리"
} else if((player == "가위" && com == "바위")
|| ((player == "바위" && com == "보")
) || (player == "보" && com == "가위")) {
gameResult.textContent = "패배"
}
}
play.forEach(btn => { // 플레이어 가위바위보 선택
btn.addEventListener('click', function(){
random();
player = this.textContent;
my.textContent = player + " VS"
computer.textContent = com;
result(com , player);
})
})
Reference
この問題について(TIL no.16-JS 3項演算子と単純条件文), 我々は、より多くの情報をここで見つけました https://velog.io/@playck/TIL-no-JS-삼항연산자와-간편한-조건문テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol