mirror of
https://github.com/RGBCube/serenity
synced 2025-06-29 03:42:07 +00:00
LibJS: Add Math.{cos,sin,tan}()
This commit is contained in:
parent
04a36b247b
commit
f5dacfbb5b
5 changed files with 79 additions and 0 deletions
|
@ -43,6 +43,9 @@ MathObject::MathObject()
|
|||
put_native_function("max", max, 2);
|
||||
put_native_function("min", min, 2);
|
||||
put_native_function("trunc", trunc, 1);
|
||||
put_native_function("sin", sin, 1);
|
||||
put_native_function("cos", cos, 1);
|
||||
put_native_function("tan", tan, 1);
|
||||
|
||||
put("E", Value(M_E));
|
||||
put("LN2", Value(M_LN2));
|
||||
|
@ -152,4 +155,28 @@ Value MathObject::trunc(Interpreter& interpreter)
|
|||
return MathObject::floor(interpreter);
|
||||
}
|
||||
|
||||
Value MathObject::sin(Interpreter& interpreter)
|
||||
{
|
||||
auto number = interpreter.argument(0).to_number();
|
||||
if (number.is_nan())
|
||||
return js_nan();
|
||||
return Value(::sin(number.as_double()));
|
||||
}
|
||||
|
||||
Value MathObject::cos(Interpreter& interpreter)
|
||||
{
|
||||
auto number = interpreter.argument(0).to_number();
|
||||
if (number.is_nan())
|
||||
return js_nan();
|
||||
return Value(::cos(number.as_double()));
|
||||
}
|
||||
|
||||
Value MathObject::tan(Interpreter& interpreter)
|
||||
{
|
||||
auto number = interpreter.argument(0).to_number();
|
||||
if (number.is_nan())
|
||||
return js_nan();
|
||||
return Value(::tan(number.as_double()));
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue