devstory

Type de données Boolean dans Dart

  1. Boolean
  2. Dart Boolean vs Javascript Boolean

1. Boolean

Dans le langage de programmation Dart, bool est un type de données pris en charge, qui n'inclut que 2 valeurs, true et false.
bool est également le nom de la classe représentant ce type de données.
Syntaxe pour déclarer une variable de type bool :
bool myVariable1 = true;

bool myVariable2 = false;
Par exemple :
bool_ex1.dart
void main() {
  bool value;
  value = 100 > 25;
  print(value); // true
}
Output:
true

2. Dart Boolean vs Javascript Boolean

Le langage de programmation Dart emprunte de nombreuses idées à JavaScript, c'est la raison pour laquelle il est si facilement converti en code JavaScript. Cependant, il existe quelques différences concernant le type de données bool dans Dart et JavaScript.
  • Dans JavaScript les valeurs false, 0, "", null, undefined, NaN et Number.Infinite sont considérées comme false. Les autres valeurs sont considérées comme true.
  • Dans Dart, seuls true et false sont considérés comme bool, les autres valeurs ne sont pas converties en bool.
Dans JavaScript, vous pouvez écrire du code comme ci-dessous, qui est accepté comme valide :
Javascript code
var test = "abc";

if(test) {
   console.log("OK! test is true");
} else {
   console.log("Ohh no, test is false");
}
Output:
OK! test is true
Cependant, vous ne pouvez pas écrire un code similaire dans Dart:
Dart code (ERROR!)
void main() {
  var test = "abc";

  if (test) { // ERROR at compile time.
    print("OK! test is true");
  } else {
    print("Ohh no, test is false");
  }
}
Vous recevrez un message d'erreur du compilateur Dart :
Error compiling to JavaScript:
Warning: Interpreting this as package URI, 'package:dartpad_sample/main.dart'.
lib/main.dart:4:7:
Error: A value of type 'String' can't be assigned to a variable of type 'bool'.
  if (test) { // ERROR at compile time.
      ^
Error: Compilation failed.