# TypeScript zu JavaScript



## Nati13 (9. Dez 2019)

Hallo zusammen, 
ich hoffe es kann mir jemand helfen, leider finde ich zu typescript selbst leider nicht viel Input, jetzt hoffe ich dass ich über javascript auch auf eine Antwort komme, da die beiden ja doch irgendwie zusammen gehören. Hier die Aufgabe: ich soll folgenden JS-Code in TS-Code umformen, von TS nach JS gibt es ja einige Tools, aber in die andere Richtung ist es eher schwierig.

```
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Namensliste</title>
</head>
<body>
<form>
    <input type="text" name="Vorname" />
    <input type="text" name="Nachname" />
    <input type="button" onclick="addtb()" value="Hier klicken um Namen hinzuzufügen." />
</form>
<table>
    <tr>
        <th>Vorname</th>
        <th>Nachname</th>
    </tr>
    <tbody id="tb">
    </tbody>
</table>

<script>
   document.getElementById('tb').appendChild(tr);
</script>
</body>
</html>
```

Und das wäre meine Umwandlung bis jetzt, da fehlt aber wahrscheinlich noch einiges, hat da wer Ideen?

```
<form>
    <input type="text" name="Vorname" />
    <input type="text" name="Nachname" />
    <input type="button" onclick="addtb()" value="Hier klicken um Namen hinzuzufügen." />
</form>
<table>
    <tr>
        <th>Vorname</th>
        <th>Nachname</th>
    </tr>
    <tbody id="tb">
    </tbody>
</table>

function addtb() {
let formData = new FormData(document.querySelector('from'));
let tr: any = document.createElement('tr');
let td1: any = document.createElement('td');
td1.append(document.createTextNode(formData.get('Vorname')));
let td2: any = document.createElement('td');
td2.append(document.createTextNode(formData.get('Nachname')));
tr.appendChild(td1);
tr.appendChild(td2);
document.getElementById('tb').appendChild(tr);
```


----------



## httpdigest (9. Dez 2019)

Also: Das, was du da zeigst, ist HTML und nicht JavaScript. Das erste HTML Snippet enthält genau zwei kleine Stellen mit JavaScript. Nämlich der Code für den onclick Event-Handler `addtb()` und der Code im Script-Tag unten `document.getElementById('tb').appendChild(tr);`

Und was genau soll das denn bitte für eine "Umwandlung" nach TypeScript sein? Du generierst hier (per JavaScript) einfach DOM-Elemente. Und da fehlt sicherlich noch ein umgebendes <script>-Element.
By the way: Jeder JavaScript Code ist auch immer gleichzeitig valides TypeScript.

EDIT: Außerdem kann bisher kein Browser nativ TypeScript ausführen. Nur JavaScript (jaa... und WebAssembly). Deswegen gibt es ja auch den tsc TypeScript Compiler, der aus TypeScript wieder JavaScript macht.


----------

