一、简单实现
1.使用while语句
var i = 1
var x = ''
while(i<6){
i++
x=x+'*'
console.log(x)
}
如果是在html中,就需要加上换行符。代码如下
var i = 1
var x = ''
while(i<6){
i++
x=x+'*'
document.write(x)
document.write('</br>')
}
2.使用for语句
var x=""
for ( i = 1 ; i < 6 ;i++)
{x=x+"*"
console.log(x)
}
出来的效果是这样
二、实现居中
通过先打空格后打*号实现居中。
5行,第1行是4个空格,1个*。每行的空格递减,星星的数量是1,3,5,7,9。
代码实现是运用for的嵌套。代码如下:
for(var i = 1;i< 5;i++){
for (var j = 1 ; j < (5-i) ;j++){
document.write(" ");
}
for(var k=1;k<=(2*i-1);k++){
document.write("*");
}
document.write("</br>");
}
原理是先通过for打完空格,然后再补上需要的星星。n行,第j行就是,n-j个空格,打2n-1个星星。
所以需要3个变量,i,j和lk。
var n = 5 //(这里填你想要的数字)
for (var i = 1; i < n; i++) {
for(var j=1;j<(n-i);j++){
document.write(' ')
}
for(var k=1;k<=(2*i-1);k++){
document.write('*')
}
document.write('</br>')
}
出来的效果是这样
三、实现菱形
需要用到if,else逻辑判断。设有n行,在n/2行的时候输入n个*,其余用空格填充(只要在前面打空格就行了)。
代码如下:
var n = 6 //(这里填你想要的数字)
for(i=1;i<=n;i++){
if (i<=n/2) {
for(j = 0; j<n/2-i;j++)
document.write(' ')
for(k=0;k<2*i-1;k++)
document.write('*')
}
else {
for(j=0;j<i-n/2;j++)
document.write(' ');
for(k=0;k<2*(n-i)-1;k++)
document.write('*');
}
document.write("</br>")
}