2016-11-27 1 views
2

Ich nehme ein Intro Javascript-Klasse und bin auf eine Aufgabe stecken.Javascript-Funktion zur Ausgabe einer Zeichenfolge mit Zeilenumbrüchen, um ein rechtwinkliges Dreieck zu erstellen

Schreiben Sie eine Funktion namens drawTriangle, die die folgende Zeichenfolge zurückgibt. Fühlen Sie sich frei, debug-print mit console.log, aber stellen Sie sicher, dass die Funktion tatsächlich eine Zeichenfolge zurückgibt.

Beachten Sie, dass in einer Zeichenfolge das Zeichen für einen Zeilenumbruch (das Äquivalent zum Drücken der "Enter" - oder "Return" -Taste) "\ n" ist.

# 
## 
### 
#### 
##### 
###### 
####### 

Mein erster Gedanke war, dass ich eine Schleife verwenden würde ein Array aufzufüllen (mit der Hoffnung auf eine Art und Weise zur Ausgabe des Array als String mit Zeilenumbrüche zu finden), aber ich bin an diesem Punkt stecken und nicht sicher, wie man vorwärts geht (oder wenn ich in die falsche Richtung gehe).

Meine aktuelle Skript ist wie folgt:

function triangle(number) { 
    var triElements = []; 
    var pound = '#'; 
    var rightTriangle = ''; 
    var lineBreak = '\n'; 
    for (var i = 0; i < number; i++) { 
     var rightTriangle = rightTriangle.concat(pound) 
     triElements.push(rightTriangle); 
    } 
    return triElements; 
} 

console.log(triangle(6)) 
+0

Und das Problem ist ..? Ich vermute, es wäre gut, * tatsächlich * einen String mit Zeilenumbrüchen anstelle eines Arrays von Strings zurückzugeben. Es gibt eine Methode namens 'Array.join', die hier helfen würde. – user2864740

Antwort

1

mit triElements.join("\n"); in Ihrer return-Anweisung

+0

Ehrfürchtig. Es funktionierte. Ich danke dir sehr! – aguadamuz

+0

Danke, und wie @Niels sagte, können Sie auch Fahrt von Array bekommen. –

2

Sie sind ein Feld zurückgibt und nicht auf das Dreieck in einem einzigen String. Ich denke, Sie sind vorbei denken, indem Sie ein Array verwenden, um das Ergebnis zu speichern, verwenden Sie einfach eine Zeichenfolge wie in diesem Beispiel:

+0

Ah ... Ich verstehe. Dies ist eine erstaunliche Lernsitzung für mich. Ich danke dir sehr. – aguadamuz

Verwandte Themen