正在解决以下问题:
函数
padIt
接受2个参数:1。
str
,它是表示要填充的字符串的字符串,我们需要在"*"
的左侧或右侧填充一些str
2.
n
,它是一个数字,填充字符串的次数。
这就是答案:
function padIt(str,n){
var count = 0;
while ( count < n ) {
count % 2 ? str += '*' : str = '*' + str;
count ++
}
return str;
}
有人可以解释这部分吗? count % 2 ? str += '*' : str = '*' + str;
假设我将这些参数放在函数padIt('a', 1)
中
第一个循环将count = 0
,因此函数将0 % 2
= 0
。为什么该函数选择str = '*' + str
选项输出'*a'
?为什么不str += '*'
输出'a*'
?
答案 0 :(得分:0)
这是if-else语句的单行速记。它被称为条件(三元)运算符。
select (1=1) IS TRUE
这是构造IS
与
function padIt(str,n){
var count = 0;
while ( count < n ) {
count % 2 ? str += '*' : str = '*' + str;
count ++
}
return str;
}
count % 2 ? str += '*' : str = '*' + str;
表示如果不计数,即使这样做也是如此
显而易见的优点是它更短。