string.prototype.repeat() 是 es6 引入的字符串重复方法,语法为 str.repeat(count),count 需为非负整数,0 返回空字符串,1 返回原串,小数向下取整,负数/infinity/nan 抛 rangeerror;现代浏览器支持,旧 ie 需 polyfill。

String.prototype.repeat() 是 JavaScript 中专门用于重复字符串的内置方法,用法简单直接,无需手动循环拼接。
基本语法和用法
调用方式为 str.repeat(count),其中 str 是原始字符串,count 是重复次数(必须是非负整数):
- 传入
0返回空字符串"" - 传入
1返回原字符串本身 - 传入小数会自动向下取整(如
2.9→2) - 传入负数、
Infinity或NaN会抛出RangeError
常见使用示例
比如生成分隔线、填充空格、构造模板片段:
-
"=".repeat(20)→"====================" -
" ".repeat(4)→" "(4个空格,可用于缩进) -
"x".repeat(5)→"xxxxx" -
["a", "b", "c"].map(s => s.repeat(2)).join("-")→"aa-bb-cc"
注意事项与兼容性
该方法在 ES6(ECMAScript 2015)中引入,现代浏览器均支持;若需兼容旧版 IE(如 IE11 及更早),需提供 polyfill 或改用其他方式(如 Array(n+1).join(str))。
另外注意:重复次数过大(如超过字符串最大长度限制)也会触发 RangeError,实际项目中建议对 count 做合理校验。











