JavaScript 创建“原生”(native)方法 ?

给字符串对象定义一个repeatify功能。当传入一个整数n时,它会返回重复n次字符串的结果。例如:
console.log('hello'.repeatify(3));
应打印 hellohellohello

在JavaScript中,我们可以通过给原生对象的原型(prototype)添加方法来创建新的“原生”方法。在这个例子中,我们可以给String对象的原型添加一个名为”repeatify”的方法。以下是如何实现的代码:

String.prototype.repeatify = String.prototype.repeatify || function(times) {
   let result = '';

   for (let i = 0; i < times; i++) {
      result += this;
   }

   return result;
};

在这段代码中,我们首先检查String.prototype.repeatify是否已经存在,如果存在我们就不再重复定义。这是为了避免重复定义同名方法引发的问题。

然后我们定义了一个函数,这个函数接受一个参数times,表示要重复的次数。在函数内部,我们初始化了一个空字符串result,然后用一个for循环来重复添加当前字符串(在函数内部,this指向当前字符串)。最后返回结果字符串。

现在,我们可以像这样使用新的方法:

console.log('hello'.repeatify(3));  // 输出 "hellohellohello"

这个新的方法可以用在任何字符串上,使我们能够方便地重复任何字符串指定的次数。

发表评论

后才能评论