public JsInstance UTCImpl(JsInstance[] parameters) { for (int i = 0; i < parameters.Length; i++) { if (parameters[i] == JsUndefined.Instance || // undefined (parameters[i].Class == JsInstance.CLASS_NUMBER && double.IsNaN(parameters[i].ToNumber())) || // NaN (parameters[i].Class == JsInstance.CLASS_NUMBER && double.IsInfinity(parameters[i].ToNumber())) // Infinity //|| parameters[i].Class == JsInstance.CLASS_OBJECT // don't accept objects ???! ) { return(Global.NaN); } } JsDate result = Construct(parameters); double offset = result.ToNumber() + TimeZone.CurrentTimeZone.GetUtcOffset(new DateTime()).TotalMilliseconds; return(Global.NumberClass.New(offset)); }
public JsInstance UTCImpl(JsInstance[] parameters) { for (int i = 0; i < parameters.Length; i++) { if (parameters[i] == JsUndefined.Instance || // undefined (parameters[i].Class == JsNumber.TYPEOF && double.IsNaN(parameters[i].ToNumber())) || // NaN (parameters[i].Class == JsNumber.TYPEOF && double.IsInfinity(parameters[i].ToNumber())) || // Infinity parameters[i].Class == JsObject.TYPEOF ) { return(Global.NaN); } } JsDate result = Construct(parameters); double offset = result.ToNumber() + TimeZone.CurrentTimeZone.GetUtcOffset(new DateTime()).TotalMilliseconds; return(Global.NumberClass.New(offset)); }