ES6学习笔记2:字符串的repeat()方法

repeat方法返回一个新字符串,表示将原字符串重复n次。下面来看一些例子

1.当参数n为正整数时

const main = () => {
  let s = '哈'
  console.log(s.repeat(3))
}
main();

打印结果

哈哈哈

由此可以看出原字符串通过repeat()方法重复拼接了三次
2.当参数n为小数时

const main = () => {
  let s = '哈'
  console.log(s.repeat(3.9))
  console.log(s.repeat(3.1))
}
main();

打印结果

哈哈哈
哈哈哈

大家可以看到无论是参数n是3.9还是3.1,都只会重复三次,我们说如果n为小数切位正数时,repeat()方法会进行取整操作
3.当参数n为负数时

const main = () => {
  let s = '哈'
  console.log(s.repeat(-0.1))
  console.log('here')
  console.log(s.repeat(-1))
  console.log(s.repeat(-3.1))
}
main();

打印结果


here
RangeError: Invalid count value

我们可以看到第一行打印结果是一个空行,这是因为如果参数是 0 到-1 之间的小数,则等同于 0,这是因为会先进行取整运算。0 到-1 之间的小数,取整以后等于-0,repeat视同为 0,后面的参数是-1或-3.1时则会报错,同样当参数为Infinity时也会报出RangeError错误
4.当参数n为特殊参数时
参数NaN等同于 0

'哈'.repeat(NaN)   // ""

如果repeat的参数是字符串,则会先转换成数字

const main = () => {
  let s = '哈'
  console.log(s.repeat(NaN))
  console.log('here')
  console.log(s.repeat('abc'))
  console.log(s.repeat('3'))
}
main();

打印结果


here

哈哈哈

你可能感兴趣的:(ES6学习笔记,ES6)