この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
真偽値(Booleans)
条件による処理の分岐をしたい
IF文を使用します。書式はJavaScript等と同様のものとなります。
num number = 0;
if (0 < number) {
print('Positive');
} else if (number < 0) {
print('Negative');
} else {
print('Zero');
}
[/javascript]
<h3 id="item_02">条件によって異なる値を変数へ代入したい</h3>
<p>三項演算子( ? : )を使用します。</p>
<h3 id="item_03">空文字のチェックをしたい</h3>
<p>Stringインスタンスが持つ「<strong>isEmpty</strong>」メソッドを使用します。</p>
String empty = '';
if (empty.isEmpty()) {
print('Empty.');
} else {
print('Not empty.');
}
ゼロ値のチェックをしたい
ゼロ値のチェックには関係演算子「==」を使用します。
var isZero = (num number) => number == 0;
isZero(0); // == true
ヌル値のチェックをしたい
ヌル値のチェックには関係演算子「==」を使用します。
var isNull = (Object obj) => obj == null;
isNull(null); // == true
NaN値のチェックをしたい
NaN値のチェックにはメソッド「isNaN」を使用します。
num number = 0 / 0;
number.isNaN(); // == true
未定義値のチェックをしたい
Dartは未定義値(undefined)の概念を持たない為、チェックを要することはありません。
厳密な等価「===」をチェックしたい
「==」が既に型の相違を偽とみなす為、「===」を使用する必要はありません。
文字列は、異なるオブジェクトでも構成される文字コードが一致すれば真となります。
var number5 = 5;
var char5 = '5';
number5 == char5 // == false, JavaScriptでは「true」となる
number5 === char5 // == false
var letterA = 'A';
var charA = new String.fromCharCodes([65]);
letterA == charA // == true
備考
「JavaScriptにみられる『!object』のような条件式は用いない!」と心に留めておくと良いと思います。(^^)