public static bool Cmp_LT(object val1, object val2)
{
double d1;
double d2;
if (val1 is Number && val2 is Number)
{
d1 = System.Convert.ToDouble(((Number)val1));
d2 = System.Convert.ToDouble(((Number)val2));
}
else
{
if (val1 is Scriptable)
{
val1 = ((Scriptable)val1).GetDefaultValue(NumberClass);
}
if (val2 is Scriptable)
{
val2 = ((Scriptable)val2).GetDefaultValue(NumberClass);
}
if (val1 is CharSequence && val2 is CharSequence)
{
return string.CompareOrdinal(val1.ToString(), val2.ToString()) < 0;
}
d1 = ToNumber(val1);
d2 = ToNumber(val2);
}
return d1 < d2;
}