# repeat
_repeat([string=''], [n=1])
**注意:**重复 N 次给定字符串。
# 参数
- string: (string): 要重复的字符串。
- n: (number): 重复的次数。
# 返回
- (string): 返回重复的字符串。
# 实现
const _repeat = (string = "", n = 1) => {
// 重复0次,则返回空值
if (n === 0 || !string) return "";
let result = "";
while (n) {
if (n % 2) {
// 如果取余仍有值,证明是奇数位,需要先加一次
result += string; // 1倍
}
// 降幂
n = Math.floor(n / 2);
// 每降一次,则str * 2
if (n) {
string += string; // 2倍
}
}
return result;
};
# 测试
_repeat("*", 3);
// => '***'
_repeat("abc", 2);
// => 'abcabc'
_repeat("abc", 0);
// => ''