文字xと文字oが文字列に表示されている回数を数えようとしていますが、それらが同じ回数表示されている場合はtrueを返し、そうでない場合はfalseを返します。3進文でのコードの整理
私はこの問題を完了しましたが、3つのステートメントを使用すると、3つの操作が3つのステートメントで必要なように見えるため、余分な条件を作成する必要がありました。文字列で不要な条件を作成せずに三項ステートメントを使用する方法はありますか、またはifステートメントを使用する必要がありますか?
function ExOh(str) {
var ex = 0
var oh = 0
var other = 0
for (var i = 0; i < str.length; i++) {
str[i] === "x" ? ex++ : str[i] === "o" ? oh++ : other++
}
return ex === oh
}
console.log(ExOh("xooabcx$%x73o"));
console.log(ExOh("xooxxo"));
console.log(ExOh("x"));
console.log(ExOh(""));
//wouldn't let me just have one statement after the ternary so I created the other variable.
これ、スタックコードレビューにする必要があります質問です。まず文字を数えようとすると、linqやregexを使うことができますが、これはコードが少なくて済むでしょうが、もしあなたの三元語が好きでなければifを使います。 –