quy tắc. MapDiff
Loại MapDiff.
Kiểu MapDiff biểu thị kết quả so sánh hai rules.Map.
Không có từ MapDiff nào có thể dùng để tạo ra điểm khác biệt. Đối tượng MapDiff được trả về bằng các lệnh gọi đến hàm rules.Map#diff.
Các hàm MapDiff mô tả dưới đây được gọi bằng cách tạo chuỗi với rules.Map#diff. Tất cả hàm MapDiff đều trả về rules.Set các đối tượng liệt kê các khoá được so sánh giữa các đối tượng Bản đồ.
// Compare two Map objects and return whether the key "a" has been // affected; that is, key "a" was added or removed, or its value was updated. request.resource.data.diff(resource.data).affectedKeys().hasOnly(["a"]);
Phương thức
khoá đã thêm
addedKeys() trả về rules.Set
Trả về rules.Set, lớp này liệt kê mọi khoá mà Map gọi
diff()
chứa những điều mà Map được truyền đến diff()
thực hiện
thì không.
- Trả lại hàng
-
non-null rules.Set
, danh sách các khoá được thêm vào rules.Map được truyền đến hàmMap.diff()
.
Ví dụ
{"a":1}.diff({}).addedKeys() == ["a"].toSet()
khoá bị ảnh hưởng
bị ảnh hưởngKeys() trả về rules.Set
Trả về rules.Set, hàm này liệt kê mọi khoá đã được thêm vào.
bị xóa khỏi hoặc được sửa đổi khỏi Maps gọi diff()
so với
Bản đồ được truyền đến diff()
. Hàm này trả về tập hợp
tương đương với kết quả tổng hợp của MapDiff.addedKeys()
,
MapDiff.removedKeys()
và MapDiff.changedKeys()
.
({"a":0, "c":0, "u":0}).diff({"r":0, "c":1, "u": 0}).affectedKeys() == ["a", "r", "c"].toSet()
- Trả lại hàng
-
non-null rules.Set
,danh sách các khoá được thêm vào, bị xoá hoặc thay đổi từ rules.Map được truyền đến hàmMap.diff()
.
khoá đã thay đổi
changesKeys() trả về rules.Set
Trả về rules.Set, hàm này liệt kê mọi khoá xuất hiện trong cả tệp Map
gọi diff()
và Map được truyền đến diff()
, nhưng
có giá trị không bằng nhau.
- Trả lại hàng
-
non-null rules.Set
, một danh sách các khoá xuất hiện trong cả hai rules.Map nhưng có giá trị không bằng nhau.
Ví dụ
{"a":0}.diff({"a":1, "b":4}).changedKeys() == ["a"].toSet()
khoá đã xoá
removedKeys() trả về rules.Set
Trả về rules.Set, lớp này liệt kê mọi khoá mà Map gọi
diff()
không chứa so với Bản đồ được chuyển đến
diff()
.
- Trả lại hàng
-
non-null rules.Set
, danh sách các khoá đã bị xoá khỏi rules.Map được truyền vào hàmMap.diff()
.
Ví dụ
{}.diff({"a":1}).removedKeys() == ["a"].toSet()
khoá không thay đổi
ChangesKeys() trả về rules.Set
Trả về rules.Set, hàm này liệt kê mọi khoá xuất hiện trong cả tệp Map
gọi diff()
và Map được truyền đến diff()
, và
có giá trị bằng nhau.
- Trả lại hàng
-
non-null rules.Set
, một danh sách các khoá xuất hiện trong cả hai rules.Map nhưng có giá trị bằng nhau.
Ví dụ
{"a": 0}.diff({"a":0}).unchangedKeys() == ["a"].toSet()