Sfoglia il codice sorgente

LibJS: Add NaN to global object

Linus Groh 5 anni fa
parent
commit
a0da97cb5a

+ 1 - 0
Libraries/LibJS/Runtime/GlobalObject.cpp

@@ -18,6 +18,7 @@ GlobalObject::GlobalObject()
     put_native_function("gc", gc);
     put_native_function("isNaN", is_nan);
 
+    put("NaN", js_nan());
     put("console", heap().allocate<ConsoleObject>());
     put("Date", heap().allocate<DateConstructor>());
     put("Error", heap().allocate<ErrorConstructor>());

+ 4 - 0
Libraries/LibJS/Tests/NaN-basic.js

@@ -3,7 +3,11 @@ function assert(x) { if (!x) throw 1; }
 try {
     var nan = undefined + 1;
     assert(nan + "" == "NaN");
+    assert(NaN + "" == "NaN");
+    assert(nan !== nan);
+    assert(NaN !== NaN);
     assert(isNaN(nan) === true);
+    assert(isNaN(NaN) === true);
     assert(isNaN(0) === false);
     assert(isNaN(undefined) === true);
     assert(isNaN(null) === false);