Reputation: 11
I am starting on Javascript and I really have no idea how to put a linebreak into a variable:
I would like to build the following triangle without using print, just putting the result into a string :
Any idea ? Thanks
#
##
###
####
#####
######
var creerTriangle= function (taille) {
var triangle = "";
for (var i = 1; i <= taille; i++) {
var ligne = "";
for (var j=1; j <= (taille-i); j++) {
ligne+=(" ");
}
for (var k=1; k<=i; k++) {
ligne += "#";
}
triangle += ligne // how to put a linebreak here ?;
};
return triangle;
};
Upvotes: 1
Views: 93
Reputation: 6455
For fun, here is another way to write this with ESNEXT:
const creerTriangle = tally =>
Array(tally)
.fill()
.map(() => '#'.repeat(tally))
.map((i, index) =>
i.replace(new RegExp(`#{${index}}`), ' '.repeat(index))
)
.reverse()
.join('\n')
console.log(creerTriangle(6))
https://repl.it/@ryanpcmcquen/javascriptCreateTriangle
Upvotes: 0
Reputation:
I think you just need "\n". See where I've written <---
/* #
##
###
####
#####
######
*/
var creerTriangle= function (taille) {
var triangle = "";
for (var i = 1; i <= taille; i++) {
var ligne = "";
for (var j=1; j <= (taille-i); j++) {
ligne+=(" ");
}
for (var k=1; k<=i; k++) {
ligne += "#";
}
triangle += ligne +"\n" //<---
};
return triangle;
};
console.dir(creerTriangle(6));
Upvotes: 1