①条件式を三択以上で使用したい
const answer = window.prompt('ヘルプを見ますか?');
if(answer === 'yes') {
window.alert('タップでジャンプ、障害物をよけます。');
} else if(answer === 'no') {
window.alert('ゲームを起動中...');
} else {
window.alert('yesかnoでお答えください。');
}
基本的にelseとifを組み合わせるだけで何択でも大丈夫そうです。
②数当てゲーム
const number = Math.floor(Math.random() * 6);
const answer = parseInt(window.prompt('数当てゲームです。0~5の数字を入力してください。'));
let message;
if(answer === number) {
message = '当たり!'
} else if(answer < number) {
message = '残念でした!もっと大きい';
} else if(answer > number) {
message = '残念でした!もっと小さい';
} else {
message = '0~5の数字を入力してね。';
}
window.alert(message);
使用したのはMath.floor(Math.random() * x)
とparseInt(window.prompt())
前者は0~(x-1)の整数をランダムに代入する為のコードで、後者は文字列(window~)を数値に変換する為のコードです。
条件式で変数messageに代入する値を決めて最後に表示するといった流れになります。
③時間毎に異なるメッセージを表示
const hour = new Date().getHours();
if(hour >= 19 && hour < 21) {
window.alert('お弁当30%OFF!');
} else if(hour === 9 || hour ===15) {
window.alert('お弁当一個買ったら一個おまけ!');
} else {
window.alert('お弁当はいかがですか');
}
使用したのはnew Date().getHours()
、演算子&&と||
です。
現段階では.getHours()はページを開いた時刻を24時間時計で取得する
くらいに捉えています。
演算子&&はドモルガンの法則のA∩Bで、複数の条件全てに当てはまった時True
になります。
演算子||はA∪Bで、複数の条件のうち一つ以上当てはまった時True
になります。