while solving this, I had to use something like the following lines of code where the line right after for loop didn't work!
function staircase(n) {
for(let i = 1; i <= n; i++){
const e = Array(n).fill(' ').splice(n - i, i, ...Array(i).fill('#'));
console.log(e.join(''))
}
}
But, the following did!
function staircase(n) {
for(let i = 1; i <= n; i++){
const e = Array(n).fill(' ');
e.splice(n - i, i, ...Array(i).fill('#'));
console.log(e.join(''))
}
}
I wonder, why using splice() with fill() in one line didn't work!
As has been explained in the comments:
const e = Array(n).fill(' ').splice(n - i, i, ...Array(i).fill('#'));
This assigns the result of splice to e.
const e = Array(n).fill(' ');
e.splice(n - i, i, ...Array(i).fill('#'));
This assigns the result of the first fill to e, and then splice acts upon e.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With