文字列が 'foo'または 'bar'と等しい場合は、下のテストからtest4がこれを実現する最善の方法だと思われますが、 test3が最良のメソッドですが、falseを返します。strがfooまたはbarと等しいかどうかを確認するJavaScriptがチェックされている
これはなぜ偽を返すのですか?また、test4の方がより良いアプローチですか?
var arr = ['a','b','c','d','e'];
var str = 'f';
var test;
test = str == arr[0] ? true:false;
console.log('test1',test);
console.log('returns false');
test = str == 'f' ? true:false;
console.log('test2',test);
console.log('returns true');
test = str == (arr[0] || 'f') ? true:false;
console.log('test3',test);
console.log('returns false');
test = str == (arr[0] && 'f') ? true:false;
console.log('test4',test);
console.log('returns true');
test = (str == arr[0]) || (str == 'f') ? true:false;
console.log('test5',test);
console.log('returns true');
"最高"の条件を定義する必要があります。テスト3と4は非常に異なることをしています。 – RobG