You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

22 lines
595 B

// Thanks: http://www.2ality.com/2014/01/efficient-string-repeat.html
'use strict';
var value = require('../../../object/valid-value')
, toInteger = require('../../../number/to-integer');
module.exports = function (count) {
var str = String(value(this)), result;
count = toInteger(count);
if (count < 0) throw new RangeError("Count must be >= 0");
if (!isFinite(count)) throw new RangeError("Count must be < ∞");
result = '';
if (!count) return result;
while (true) {
if (count & 1) result += str;
count >>>= 1;
if (count <= 0) break;
str += str;
}
return result;
};