[解決済み] JavaScriptの基本です。カードを数える - 文字列を使ったカードカウント機能
2022-02-08 09:34:44
質問
カード機能については、何度も説明を受けており、理解しています。知らない人のために説明すると、私の関数はcardパラメータ(数値または文字列)を受け取ります。2,3,4,5,6は増加し、7,8,9は0を維持し、10, J, Q, K, Aは減少させる。私の関数は、現在のカウントと、カウントが正なら "Bet"、負なら "Hold" という文字列を返します。
そして、FreeCodeCampは私のソリューションが技術的に彼らの条件を満たしているとして、それを受け入れました。しかし、この関数について質問があります。
var count = 0;
function cc(card) {
if (card >= 2 && card <= 6) {
count++;
} else if (card >= 7 && card <= 9) {
count += 0;
} else {
count--;
}
if (count <= 0) {
return count + " Hold";
} else {
return count + " Bet";
}
}
console.log(cc(2));
console.log(cc(3));
console.log(cc(7));
console.log(cc('K'));
console.log(cc('A'));
見ての通り、最初の条件はかなりシンプルで定義しやすく、else ifもそうです。3番目のケースでは、数字と文字列の両方が関係します。これは、ccに任意の文字列を入れると、デクリメントされるということではないのでしょうか?2と6、7と9の間でないものは、自動的にデクリメントされるということですか?カードでないもの、リストの値でないものをユーザーが入力してもですか?
しかし、カードが10、J、Q、K、Aのいずれかである場合にのみ条件を実行し、他の値ではないことを確認するために、ステートメントを条件づける良い方法はありませんか?
どのように解決するのですか?
現在のelseを変更して、入力が有効でないカードの場合はエラーメッセージを返すか即座に返すようにし、別のelseを追加して10~Aceをチェックします。
if (card >= 2 && card <= 6) {
count++;
} else if (card>=7 && card <=9) {
count+= 0;
} else if (card === 10 || card === 'J' || card === 'Q' || card === 'K' || card === 'A'){
count--;
}else {
//Either just return or alert an error message and return
}
関連
-
[解決済み】フォームコントロールの値アクセサがない
-
[解決済み】JavaScriptで「無効な日付」のDateインスタンスを検出する
-
[解決済み] JavaScriptで現在のURLを取得する?
-
[解決済み] JavaScriptで要素のクラスを変更するにはどうすればよいですか?
-
[解決済み] JavaScriptで複数行の文字列を作成する
-
[解決済み] JavaScriptでNULL、未定義、空白の変数をチェックする標準的な関数はありますか?
-
[解決済み] JavaScriptで2つの日付を比較する
-
[解決済み] JavaScriptでカンマを桁区切りにして数値を表示する方法
-
[解決済み] モバイルブラウザの検出
-
[解決済み】JavaScriptの関数にデフォルトのパラメータ値を設定する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】 Uncaught TypeError: data.push is not a function
-
[解決済み】node.js TypeError: path must be absolute or specify root to res.sendFile [JSONのパースに失敗しました]。
-
[解決済み】フォームコントロールの値アクセサがない
-
[解決済み】Uncaught TypeError: nullのプロパティ'value'を読み取ることができない
-
[解決済み】JavaScriptのinnerHTMLで要素が更新されない
-
[解決済み】コンソールがUnterminated JSX contentsエラーを投げる【終了しました
-
[解決済み】React、Uncaught ReferenceError。ReactDOMは定義されていません
-
[解決済み】npm install --legacy-peer-deps は具体的に何をするのですか?どんなときに推奨されるのか/どんな使用例が考えられるのか?
-
[解決済み】TypeError: res.status は関数ではありません。
-
[解決済み】ETIMEDOUTエラーの対処方法は?