如何利用String.repeat()方法高效创建指定重复的填充字符串?
- 内容介绍
- 相关推荐
本文共计914个文字,预计阅读时间需要4分钟。
String.repeat() 是 ES6 引入的原生方法,直接在字符串上调用,传入一个非负整数即可返回重复拼接后的新字符串。它不会修改原字符串,也不支持小数、负数或 Infinity。如果传入这些值,会立即抛出 RangeError。
- 合法调用:
"a".repeat(3)→"aaa" - 空字符串重复任意次仍是空:
"".repeat(100)→"" - 传
0返回空字符串,不是原字符串 - 传
NaN或undefined会被转成0(隐式转换),但通常应避免依赖这种行为
常见错误:重复次数超限或类型不对
最常踩的坑是把变量直接传进去却没校验类型或范围。比如从表单取值或 API 返回的 count 是字符串 "5" 或 null,repeat() 会尝试转为数字——"5" 没问题,但 null 变成 0,undefined 同样变 0,结果悄无声息地返回空串,很难排查。
本文共计914个文字,预计阅读时间需要4分钟。
String.repeat() 是 ES6 引入的原生方法,直接在字符串上调用,传入一个非负整数即可返回重复拼接后的新字符串。它不会修改原字符串,也不支持小数、负数或 Infinity。如果传入这些值,会立即抛出 RangeError。
- 合法调用:
"a".repeat(3)→"aaa" - 空字符串重复任意次仍是空:
"".repeat(100)→"" - 传
0返回空字符串,不是原字符串 - 传
NaN或undefined会被转成0(隐式转换),但通常应避免依赖这种行为
常见错误:重复次数超限或类型不对
最常踩的坑是把变量直接传进去却没校验类型或范围。比如从表单取值或 API 返回的 count 是字符串 "5" 或 null,repeat() 会尝试转为数字——"5" 没问题,但 null 变成 0,undefined 同样变 0,结果悄无声息地返回空串,很难排查。

