code: function WeakMapConstructor(iterable) {
    if (IS_UNDEFINED(new.target)) {
      throw MakeTypeError(kConstructorNotFunction, "WeakMap");
    }
  
    %WeakCollectionInitialize(this);
  
    if (!IS_NULL_OR_UNDEFINED(iterable)) {
      var adder = this.set;
      if (!IS_CALLABLE(adder)) {
        throw MakeTypeError(kPropertyNotFunction, adder, 'set', this);
      }
      for (var nextItem of iterable) {
        if (!IS_RECEIVER(nextItem)) {
          throw MakeTypeError(kIteratorValueNotAnObject, nextItem);
        }
        %_Call(adder, this, nextItem[0], nextItem[1]);
      }
    }
  }
docs: ------------------------------------------------------------------- Harmony WeakMap