Jint.Native.JsGlobal.ParseFloat C# (CSharp) Method

ParseFloat() public method

15.1.2.3
public ParseFloat ( JsInstance arguments ) : JsInstance
arguments JsInstance
return JsInstance
        public JsInstance ParseFloat(JsInstance[] arguments)
        {
            if (arguments.Length < 1 || arguments[0] == JsUndefined.Instance) {
                return JsUndefined.Instance;
            }

            string number = arguments[0].ToString().Trim();
            // the parseFloat function should stop parsing when it encounters an unalowed char
            Regex regexp = new Regex(@"^[\+\-\d\.e]*", RegexOptions.IgnoreCase);

            Match match = regexp.Match(number);

            double result;
            if (match.Success && double.TryParse(match.Value, NumberStyles.Float, new CultureInfo("en-US"), out result)) {
                return NumberClass.New(result);
            }
            else {
                return this["NaN"];
            }
        }