1
0
Fork 0
mirror of https://github.com/LadybirdBrowser/ladybird.git synced 2025-06-09 17:44:56 +09:00

LibJS: Implement Error.prototype.name setter (#1776)

The MDN example for creating a custom error type in javascript uses:

    function CustomError(foo, message, fileName, lineNumber) {
        var instance = new Error(message, fileName, lineNumber);
        instance.name = 'CustomError';
        instance.foo = foo;
        Object.setPrototypeOf(instance, Object.getPrototypeOf(this));
        return instance;
    }

The name property on the Error prototype needs to be settable for
this to work properly.
This commit is contained in:
Brian Gianforcaro 2020-04-13 02:19:53 -07:00 committed by GitHub
parent 984c290ec0
commit 2a65db7c12
Signed by: github
GPG key ID: 4AEE18F83AFDEB23
Notes: sideshowbarker 2024-07-19 07:38:25 +09:00
4 changed files with 30 additions and 1 deletions

View file

@ -0,0 +1,12 @@
try {
var changedInstance = new Error("");
changedInstance.name = 'NewCustomError';
assert(changedInstance.name === "NewCustomError");
var normalInstance = new Error("");
assert(normalInstance.name === "Error");
console.log("PASS");
} catch (e) {
console.log("FAIL: " + e.message);
}