Programmieren – die besten Beiträge

Wie gebe ich Dictionary einer Funktion in Javascript mit?

Hallo, ich kriege folgende Fehlermeldung bei meinem Code: "Uncaught SyntaxError: Unexpected identifier" und weiß nicht wie ich mein dict meine onclick so übergebe, dass ich anschließend damit weiterarbeiten und iterieren kann. Als Beispiel für mein Problem habe ich folgende kleine anwendung geschrieben:

script.js:

function geklickt(dictionary){
$('#Entries').text(dictionary);
}


var dict =
{'lizens':
    {'Apache License 2.0':
        {'value': 23,
         'paths': ['Bernd', 'Hans'],
         'id': '342345'}},
'rechte':
        {'Copyright (c) 2013-2020 the original author or authors': 3},
'authoren':
        {'Bexter': 6, 'senior': 6},
'fileTypes': [0, 21, 0, 0, 0, 0, 0, 0, 44],
}


 $("#buttons").append(`<button href="#"onclick="geklickt(${dict})">drücken</a></button>`);



test.html:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body >

<ul id="buttons"></ul>
<p id="Entries"></p>

    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
    <script src="{{ url_for('static', filename='assets/js/scripts.js') }}"></script>
</body>
</html>

Also meine Frage ist wie ich jetzt mein dict der onclick übergebe damit es am ende ausgegeben werden kann. In meiner eigentlichen Anwendung will ich damit natürlich noch weiterarbeiten, also vlt auch so dass ich es anschließend noch iterieren kann. Ich bin recht neu und kenne den Zusammenhang zwischen String und Dictionary noch nicht richtig, kann ich bei einem Dictionary iterieren wenn es als string vorliegt oder ist Dictionary eine art eigene Datenstruktur?
Danke schonmal im Voraus.
Computer, Technik, HTML, programmieren, Java, JavaScript, Technologie, Frontend

Wofür stehen die Parameter in __init__(self, ...) und super().__init__(...) in Python?

Hallo, ich lese mir in einem Buch gerade das Kapitel zu Klassen und Vererbung durch. Was ich bislang verstanden habe: Basisklassen kann man durch Tochterklassen im Stil Tochterklasse(Basisklasse) kopieren und anschliessend weiterentwickeln (Vererbung).

Dabei gibt man der Tochterklasse mit __init__(self, ...) ihren eigenen Konstruktor und damit der Codeverlauf konsistent bleibt, fügt man in der anschliessenden Zeile super().__init__( ...) hinzu. Anschliessend kann man Methoden der Basisklasse überschreiben. Bei einfachen Beispielen fand ich das nachvollziehbar.

Nun habe ich ein komplizierteres Beispiel vor, bei dem in den jeweiligen Klammern noch weitere Parameter stehen (sowohl bei dem neuen als auch alten Konstruktor), das sieht wie folgt aus:

#Tochterklasse der Basisklasse VerwalteterGeldbetrag

class AllgemeinesKonto(VerwalteterGeldbetrag):

  def __init__(self, kundendaten, kontostand):

    super().__init__(kontostand)

self.Kundendaten = kundendaten

Frage: Wofür genau stehen Werte wie diese in den Klammern, was machen sie? Gemeint sind die ab def. Da der Gesamtcode über 80 Zeilen oder so lang ist, habe ich nur diese beiden Inhalte eingefügt, um die Frage abstrakt zu halten. Was objektorientierte Programmierung ist, habe ich grob verstanden, nur sind da so viele Schritte, auf die ich als kompletter Anfänger nicht so schnell kommen würde.

Computer, programmieren, Informatik, Python, Objektorientierte Programmierung

Meistgelesene Beiträge zum Thema Programmieren