ladybird/Libraries/LibJS/Tests/function-missing-arg.js
Andreas Kling c60dc84a33 LibJS: Allow function calls with missing arguments
We were interpreting "undefined" as a variable lookup failure in some
cases and throwing a ReferenceError exception instead of treating it
as the valid value "undefined".

This patch wraps the result of variable lookup in Optional<>, which
allows us to only throw ReferenceError when lookup actually fails.
2020-03-27 12:56:05 +01:00

13 lines
289 B
JavaScript

function assert(x) { if (!x) throw 1; }
function foo(a, b) { return a + b; }
try {
assert(isNaN(foo()) === true);
assert(isNaN(foo(1)) === true);
assert(foo(2, 3) === 5);
assert(foo(2, 3, 4) === 5);
console.log("PASS");
} catch (e) {
console.log("FAIL: " + e);
}