Integrieren Sie JavaScript-Module
P粉745412116
P粉745412116 2023-09-09 21:45:59
0
1
478

In meinem Code wird ein Array aus einem importierten Modul deklariert. Funktionen, die sich auf dieses Modul beziehen, werden aus dem zweiten Modul importiert. Hier ist eine vereinfachte Version meines Codes:

Das erste Modul, das Arrays enthält

let module1 = {}; module1.array = [10, 20, 30];

Zweites Modul mit Funktionen

var module2 = {}; module2.fct1 = () => { return array[0]; }; module2.fct2 = () => { return array[1]; }; module2.fct3 = () => { return array[2]; };

Ich möchte diese beiden Module zu einer Einheit zusammenführen:

module1.fct1 = module2.fct1; module1.fct2 = module2.fct2; module1.fct3 = module2.fct3;

module1Enthält jetzt Arrays und Funktionen

{ array: [10, 20, 30], fct1: () => { return array[0]; }, fct2: () => { return array[1]; }, fct3: () => { return array[2]; } }

Wenn ich jedoch die Funktion aufrufe, scheint das Array außerhalb des Funktionsbereichs zu liegen:

console.log (module1.fct1())

Ich habe die folgende Fehlermeldung erhalten:

Unabgefangener Referenzfehler: Array ist undefiniert

Wenn ich ein einzelnes Modul mit Arrays und Funktionen in derselben Datei erstelle, funktioniert es.

Meine Frage ist: Gibt es in JavaScript eine Möglichkeit, zwei Module zusammenzuführen? Mein ultimatives Ziel ist es, das zusammengeführte Modul an eine andere Funktion zu übergeben.

Dies ist ein JSFiddle-Link: https://jsfiddle.net/Imabot/rxsfvgda/4/

P粉745412116
P粉745412116

Antworte allen (1)
P粉254077747

看起来你期望module2的部分是可以在任何其他(模块)对象上调用的方法,这些对象具有.array属性。为此,你需要通过this.array访问数组,并且需要使用方法语法而不是箭头函数:

var module2 = {}; module2.fct1 = function() { return this.array[0]; }; module2.fct2 = function() { return this.array[1]; }; module2.fct3 = function() { return this.array[2]; };

或者更简单的写法:

var module2 = { fct1() { return this.array[0]; }, fct2() { return this.array[1]; }, fct3() { return this.array[2]; }, };
    Neueste Downloads
    Mehr>
    Web-Effekte
    Quellcode der Website
    Website-Materialien
    Frontend-Vorlage
    Über uns Haftungsausschluss Sitemap
    Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!