Ich habe die Function gelesen. So versuche ich Funktionserklärung in Funktion Ausdruck von neue Funktion zu transformieren. Aber bin ich in der unten stehenden Code stecken:Gibt es einen Fehler in der neuen Funktion?
function Foo(name, age) {
Foo.prototype.name = name;
Foo.prototype.age = age;
}
var foo = new Foo(1,2); // this is ok
console.log(Foo.prototype.hasOwnProperty('name'));
console.log(foo.hasOwnProperty('name'));
Allerdings gibt es einen Fehler nach der Transformation:
var Foo = new Function(['name', 'age'], 'Foo.prototype.name=name;Foo.prototype.age=age;');
var foo = new Foo(1,2); // error: Foo is not defined
console.log(Foo.prototype.hasOwnProperty('name'));
console.log(foo.hasOwnProperty('name'));
Gibt es einen Fehler? Jede Antwort ist hilfreich.
Der Code ist in meinem Chrom-Browser richtig. Allerdings macht es einen Fehler auf der Plattform:
- NodeJS: 6.10.0
- win7 64bit
Sie können Foo anmelden und sehen, ob es eine Funktion ist – CaptainHere
Warum möchten Sie das tun? – Pointy
Nichts von dem, was Sie geschrieben haben, ergibt einen Sinn ... –