Destructuring assignment in Dart

Find this useful? Support us: Star on GitHub 6
Category: Other | Language: Dart

Destructuring assignment is a feature in Dart that allows you to extract values from objects and arrays and more easily assign them to variables. Here are some examples of how to use destructuring assignment in Dart:

1. Destructuring assignment with arrays

var list = [1, 2, 3];
var [a, b, c] = list;

print(a); // 1
print(b); // 2
print(c); // 3

2. Destructuring assignment with maps

var person = {"name": "John Doe", "age": 30};
var {name, age} = person;

print(name); // John Doe
print(age); // 30

3. Destructuring assignment with nested objects

var person = {"name": "John Doe", "age": 30, "address": {"city": "New York", "state": "NY"}};
var {name, age, address: {city, state}} = person;

print(name); // John Doe
print(age); // 30
print(city); // New York
print(state); // NY

4. Destructuring assignment with default values

var person = {"name": "John Doe", "age": 30};
var {name, age, email = "unknown"} = person;

print(name); // John Doe
print(age); // 30
print(email); // unknown

5. Destructuring assignment with function parameters

void foo({String name, int age}) {
print(name);
print(age);
}

foo(name: "John Doe", age: 30);

You can also use destructuring assignment to extract values directly from function parameters:

void foo({String name, int age}) {
var {firstName, lastName} = name.split(" ");
print(firstName);
print(lastName);
print(age);
}

foo(name: "John Doe", age: 30);

These are just some examples of how to use destructuring assignment in Dart. Overall, destructuring assignment can make your code more concise and easier to read when working with objects and arrays.