Reputation: 23
I try to write a function called "stars" which prints out layers of stars in the following pattern:
stars(1);
// *
stars(4);
// *
// **
// ***
// ****
this is my code:
function stars(n){
let result="";
for(let i=1;i<=n;i++){
result +="*" ;
console.log(result);
}
}
console.log(stars(1));
console.log(stars(4));
but, it turns out to be:
"*"
undefined
"*"
"**"
"***"
"****"
undefined
I try to take apart the loop but still can't figure out why the "undefined" appeared. Thanks!
Upvotes: 2
Views: 64
Reputation: 1
You should just call stars(x),Instead of using console.Because your function doesn't return anything。
Upvotes: 0
Reputation: 1122
function stars(n){
let result="";
for(let i=1;i<=n;i++){
result +="*" ;
console.log(result);
}
}
stars(1);
stars(4);
stars is a function that returns nothing, then console logging it logs undefined.
Upvotes: 1