PHP使用for循环打出星号表格,console - JavaScript中,使用for循环输出如下图形(等腰三角形,和平行四边形)?原理是啥?...

这篇博客展示了如何使用ES6和非ES6语法来编写函数,实现打印不同类型的图形,包括累加空格和星号的简单图形,以及三角形的正向和反向打印。通过比较两种语法的不同实现方式,帮助读者理解ES6的新特性及其在代码简洁性上的优势。
摘要由CSDN通过智能技术生成

小皮2017-04-11 13:13:591楼

以下代码用了ES6,取名比较随意s就是space,空格的意思,n是要总次数,第二个参数是输出的图形

第一个很简单,累加就好了

//ES6

function first(n,print = "*"){

for(let i = 0; i < n ;i++)

console.log(i > 0 ? print.repeat(i + 1) : print);

}

//非ES6

function first(n,print){

print = print || "*";

var temp = "";

for(var i = 0; i < n ; i++)

console.log(temp += print);

}

第二个也很简单,依旧是累加,这次累加的是空格,如果是第一次进入循环就不打印空格

//非es6

function second(n,print){

print = print || "*****"

for(var i = 0,s = "";i < n;i++)

console.log(i > 0?(s = " " + s) + print : print);

}

关于倒过来,不用es6的话,写两个循环(也许可以不用写两个循环吧,但是我没想到),用了es6的话用repeat函数可以写的更好看点

//es6

function secondReverse(n,r = "*****"){

for(let i = 0;i < n;i++)

console.log(" ".repeat(n-i-1) + r );

}

//非es6

function secondReverse(n,print){

print = print || "*****";

for(var i = n;i > 0;i--){

var s = "";

for(let j = 0 ; j < i ; j++)

s+= " ";

console.log(s + print);

}

}

三角形

//ES6

function third(n,print = "*"){

for(let i = 0 ; i < n ; i++ )

console.log(" ".repeat(n-i-1) + (i > 0 ? print.repeat(2*(i+1)-1) : print))

}

//非Es6

function third(n,print){

print = print || "*";

var temp = "";

for(var i = 0 ; i < n ; i++ ){

let s = "";

for(var j = 1 ; j < n - i ;j++)

s += " ";

console.log(i > 0 ? s + (temp = temp + print + print) : s + (temp +=print));

}

}

倒过来

//ES6

function thirdReverse(n,print = "*"){

for(let i = n ; i > 0 ; i--)

console.log(" ".repeat(n - i) + print.repeat(2*i-1))

}

//非ES6

function thirdReverse(n,print){

print = print || "*";

var s = "";

for(var i = 0 ; i < n ; i++ ){

let temp = "*";

s += " ";

for(var j = 1 ; j < n - i ;j++)

temp += print + print

console.log(s + temp);

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值