これらのステートメントはどのように同等ですか?
var test ='one'
if( test == 'car' || 'one' ){
console.log('spo')
}
と
if( test == 'car' || test == 'one' ){
console.log('spo')
}
これらのステートメントはどのように同等ですか?
var test ='one'
if( test == 'car' || 'one' ){
console.log('spo')
}
と
if( test == 'car' || test == 'one' ){
console.log('spo')
}
いいえ、同等ではありません。
if( test == 'car' || 'one' ){
console.log('spo')
}
と同等です
if( test == 'car' || 'one' != ''){
console.log('spo')
}
いいえ。最初のテストは常に合格します。
の左側||
が偽の場合、右側を返します。したがって、右側('one'
)が返されます。これは真実なので、テストは合格します。
いいえそうではありません。
最初の条件式でtest == 'car' || 'one'
は、 は 常に真の値(つまり、等値または「1」の結果) に評価される(test == 'car') || 'one'
ものと同じです。
後者の条件は、test が「car」または「one」の場合にのみ true になり、それ以外の場合は false になります。
反例の「こんにちは」のように、失敗したテスト値でも試してください。
いいえ。「1」を真として受け入れる Javascript のような言語。したがって、最初のテストは常にパスします。2 番目のテストは、何がテストになるかわからないため、false になる可能性があります。