1

次の略語に相当するものは何ですか?

if (windowwidth >= 960){
        widthofwindow = 1;
    } else {
        widthofwindow = 0;
    }
4

4 に答える 4

12

三項演算子を使用できます。

widthofwindow = windowwidth >= 960 ? 1 : 0

あなたはそれを次のように読むことができます

condition ? value_if_true : value_if_false
于 2013-08-07T13:11:29.483 に答える
4

必要に応じて、いくつかのハック(三項演算子以外)を使用できます

widthofwindow = Number(windowwidth >= 960);

式を使用する場合Number(value)、型変換 (値 => 数値) が実行され、この場合 intwindowwidth >= 960true1 にキャストされ、それ以外の場合は 0 にキャストされます。newオブジェクトを作成したくないため、キーワードを使用しないことに注意してください。ある型を別の型にキャストしたいだけです。

詳細については、こちらを参照してください:番号 (MDN)

また

widthofwindow = (windowwidth >= 960) * 1;

このケース (および+(value)) は、JS での型変換への別のアプローチの例です。乗算する(または単項+符号を使用する)と、ブール値もNumberそれぞれの値になります。

ここでいくつかの情報を見つけることができます: JavaScript ガーデン

于 2013-08-07T13:14:02.343 に答える
0
result = (condition) ? 'something' : 'somethingelse';

http://javascript.about.com/od/byexample/a/ternary-example.htm

于 2013-08-07T13:14:26.020 に答える
0
windowwidth = windowwidth >= 960 ? 1 : 0;
于 2013-08-07T13:12:55.793 に答える