2016-05-30 7 views
-3

に意味はなく、以下のコードを混同:textStylesはtruthyであり、それはある性質lineHeightを持っている場合どうすれば&&と|| highstockのソースコードを読んで、次のコード

textLineHeight = textStyles && textStyles.lineHeight, 

wrapper.height = (height || bBox.height || 0) + 2 * padding; 

cHeight = (old && chart.oldChartHeight) || chart.chartHeight; 

おかげ

+0

JavaScriptと(&&)演算子&または(||)演算子 http://www.w3schools.com/js/js_operators.asp – brk

+0

@ user2181397、彼は – slick

+0

@slick、事業者の変更 "次のコードでは、" 尋ねますコードに関して、それはあなたが意味することですか? – SilentMonk

答えて

3
textLineHeight = textStyles && textStyles.lineHeight; 

手段はtextStyles.lineHeighttextLineHeightを設定真実でもあります。

&&は、短絡評価により、textStylesが定義されていない限り、textStyles.lineHeightが評価されないことが保証されるため、JavaScriptではガード演算子と呼ばれることがよくあります。これにより、実際には定義されていないエラーが回避されます。ここで

wrapper.height = (height || bBox.height || 0) + 2 * padding; 

そうでないことがtruthyある場合bBox.heightを使用し、最終的にどちらがtruthyある場合0にフォールバックtruthyであれば、||手段はheightを使用しています。 ||はJavaScriptのデフォルト演算子と呼ばれることが多く、左辺の式が偽である場合に使用する値を指定できます。

関連する問題