public override object Call(IObj that, object[] args) { var len = JsTypeConverter.ToInt32(that.Get("length")); if (len != 0) { var result = that.Get((double)len - 1); that.Delete(len); that.Put("length", (double)len - 1); return result; } that.Put("length", (double)len); return Undefined.Instance; }
public override object Call(IObj that, object[] args) { var n = (double) JsTypeConverter.ToInt32(that.Get("length")); foreach (var arg in args) that.Put(n++, arg); return n; }