知っておくべきトップ10マップ/オブジェクトユーティリティメソッド🎯


この記事では、あなたが知っておくべきトップ10のユーティリティメソッドを見ていきますMap ダーツを入力します.これは以前の“私は配列/リストの種類にしたので、右にジャンプしましょう”に姉妹記事です.

1 . addall ()


これにより、現在マップされているマップのすべてのキー/値ペアをマージできます.
var user = {
  "firstName": "Tom",
  "age": 25,
};

user.addAll({
  "lastName": "Smith",
  "age": 26,
});

print(user); // => {"firstName": "Tom", "age": 26, "lastName": "Smith"}
キーが既に存在する場合、その値が置き換えられます.これはObject.assign JavaScriptで.

2 .コンテナkey ()


指定したキーが存在するかどうかを調べる
print(user.containsKey("age")); // => true
print(user.containsKey("accessToken")); // => false

ContainsValue ()


指定した値が存在するかどうかを調べる
print(user.containsValue("Smith")); // => true
print(user.containsValue(40)); // => false

4 . open ()


指定した関数を各キー/値
user.forEach((key, value) => print('Key: $key, Value: $value')); // => "Key: firstName, Value: Tom" "Key: age, Value: 26" "Key: lastName, Value: Smith"

putifabted ()


存在しないならば、キー/値組を加えます.keyが既に存在する場合、値が1つでなければ設定されます.
user.putIfAbsent("accessToken", () => "abf329jklr90rnlk2..."); // => {"firstName": "Tom", "age": 26, "lastName": "Smith", "accessToken": "abf329jklr90rnlk2..."}

6 . remove ()


指定したキーとその値を削除する
user.remove("accessToken"); // => abf329jklr90rnlk2...
これは削除された値を返します.

7 . removewhere ()


指定した条件がtrueの場合、key/value
user.removeWhere((key, value) => key == "lastName");

8章clear ()


マップ内のすべてのキー/値のペアを削除する
user.clear();
print(user); // => {}

update . update ()


指定したキーの値を更新する
user["age"] = 25;
user.update("age", (dynamic val) => ++val); // => 26
これも新しい値を返します.エラーがスローされないようにするには、3番目のパラメータがあります.
user.update("name", (dynamic val) => "Jim", ifAbsent: () => "Jane");
print(user); // => {"age": 26, "name": "Jane"};
ほとんどの場合、配列ブラケット表記を使用して更新できます:
user["name"] = "Mary";

10 .地図from ()


これは技術的にはコンストラクタですが、まだユーティリティとして役に立ちます.指定したマップのコピーを作成して返します.
var userCopy = Map.from(user);

結論


私は、これが洞察力であり、これがダーツへのあなたの最初の露出であるならば、基本をつかむために、私のものを読んでください.この記事のコードスニペットはDartPad .
私のように😍 ダーツに関するより多くの記事のために.どうもありがとう.

クイックリンク

  • Map<K,V> class Documentation
  • Free Dart screencasts on Egghead.io
  • 続きを読む