jsonEqual static method

bool jsonEqual(
  1. dynamic a,
  2. dynamic b
)

Implementation

static bool jsonEqual(a, b) {
  var result = true;
  if (a is Map && b is Map) {
    if (a.length != b.length) return false;
    a.keys.forEach((k) {
      if (!jsonEqual(a[k], b[k])) {
        result = false;
        return;
      }
    });
  } else if (a is List && b is List) {
    if (a.length != b.length) return false;
    for (var i = 0; i < a.length; i++) {
      if (!jsonEqual(a[i], b[i])) {
        return false;
      }
    }
  } else {
    return a == b;
  }
  return result;
}