この質問にはより良いタイトルが見つかりませんので、編集の提案は非常に高く評価されます。割り当てられた変数を使用する条件とインライン条件チェック
割り当てられた変数とインライン条件で条件を確認することに違いがあるのでしょうか。例えば
:
オプション1:
// inline conditions check
function isSomething(){
return (1 > 2 || 'a' == 'a' || 2 < 4) ||
(55 == 1 || (32 > 4 || 'a' == 'a') && 6 > 2) ||
('abc' != 'bca' && 3 == 3);
}
オプション2:
// pre assigned variables condition check
function isSomething(){
const conditionA = 1 > 2 || 'a' == 'a' || 2 < 4; // some complex condition
const conditionB = 55 == 1 || (32 > 4 || 'a' == 'a') && 6 > 2; // some complex condition
const conditionC = 'abc' != 'bca' && 3 == 3 // some complex condition
const result = conditionA || conditionB || conditionC;
return result;
}
オプション2に、それはすべての3つの条件をチェックしますが、理論的にオプション1でなければならないようですそれがtrue
なら最初のチェックの後に戻ることができます。
明らかに、オプション2は私が選択したものですが、動作やパフォーマンスに違いはありますか? 2つのオプションの間でパフォーマンスをテストする方法はありますか?
を短絡評価の利点を組み合わせたい場合は、まだjsPerfで聞いていない場合は、これが最良の可能性サイトを訪問する瞬間。複数の選択肢があり、すべてブラウザ上でオンラインになっています(例:http://jsben.ch/#/7XyeB)。 –
@WiktorZychla面白い、ありがとう、私はそれについて知らなかった。私は時々別の結果を得るが。例:コードブロック1が最速、次にコードブロック2が最速 –