在jQuery/JS中有没有简单的方法来乘以字母数字字符串?
例如
var str = "ABC";
console.log( str * 5 ); // this will nerutn `Nan`
// where what i want is `ABCABCABCABCABC`
非常感谢任何建议。
我在这里看到了确切的问题:
重复字符串-Javascript
只需将此添加到您的代码中:
String.prototype.repeat = function( num )
{
return new Array( num + 1 ).join( this );
}
var str = "ABC";
console.log( str.repeat(5) ); // this will return `ABCABCABCABCABC`
尝试使用原型函数扩展String
对象。
String.prototype.repeat = function (n) {
var str = '';
for(var i = 0; i < n; i++) { str += this; }
return str;
};
这样你就可以这样做:
console.log(str.repeat(5));
String.prototype.duplicate = function( numTimes ){
var str = "";
for(var i=0;i<numTimes;i++){
str += this;
}
return str;
};
console.log( "abc".duplicate(2) );
jsbin示例
这会返回Nan,因为str不是数字。
你应该这样做:
var str = "ABC";
console.log( multiply(str,num) );
具有功能
function multiply(str,num){
for ( var int = 0; int < length; int++) {
str += str;
}
return str
}
String.prototype.multi = function(num) {
var n=0,ret = "";
while(n++<num) {
ret += this;
}
return ret;
};
然后在你想要的任何字符串上使用.multi(5(:(像:
var s = "ABC";
alert( s.multi(5) );