用变量替换 JavaScript 中的函数
Replace function in JavaScript By variable
我需要用 Random 替换 $
我该怎么做。
我想将此文本从 Some texte here some text here
转换为这样的 Som(gb5t2)e t(gb95f)ext(ze6f5)e h(bs3e2)ere (avFe3)so(gEC3e)me (aFE98)tex(8FZq2)t h(dq9aA)ere(cZ3cC)
.
function String() {
var str = "Some texte here some text here".replace(/(.{3})/g, "$");
var mystring = str;
var find = "$";
var regex = new RegExp(find, "g");
var fun = randomString();
alert(mystring.replace(regex, fun));
document.write(str);
function randomString() {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 5;
var randomstring = '';
for (var i=0; i<string_length; i++) {
var rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum,rnum+1);
}
document.randform.randomfield.value = " ( " + randomstring + " ) ";
}
}
首先,您的函数 randomString() 没有 return 任何东西,所以乐趣总是一无是处。其次,您的查找正则表达式不起作用。
用这两个试试:
var find = '\$+';
function randomString() {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 5;
var randomstring = '';
for (var i=0; i<string_length; i++) {
var rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum,rnum+1);
}
return randomstring;
}
我已经对您的代码进行了一些修改,现在应该可以使用了。
function String() {
var str = "Some texte here some text here".replace(/(.{3})/g, function (x)
{
return x + randomString();
});
document.write(str);
function randomString() {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 5;
var randomstring = '';
for (var i=0; i<string_length; i++) {
var rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum,rnum+1);
}
return " ( " + randomstring + " ) ";
}
}
我需要用 Random 替换 $
我该怎么做。
我想将此文本从 Some texte here some text here
转换为这样的 Som(gb5t2)e t(gb95f)ext(ze6f5)e h(bs3e2)ere (avFe3)so(gEC3e)me (aFE98)tex(8FZq2)t h(dq9aA)ere(cZ3cC)
.
function String() {
var str = "Some texte here some text here".replace(/(.{3})/g, "$");
var mystring = str;
var find = "$";
var regex = new RegExp(find, "g");
var fun = randomString();
alert(mystring.replace(regex, fun));
document.write(str);
function randomString() {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 5;
var randomstring = '';
for (var i=0; i<string_length; i++) {
var rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum,rnum+1);
}
document.randform.randomfield.value = " ( " + randomstring + " ) ";
}
}
首先,您的函数 randomString() 没有 return 任何东西,所以乐趣总是一无是处。其次,您的查找正则表达式不起作用。
用这两个试试:
var find = '\$+';
function randomString() {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 5;
var randomstring = '';
for (var i=0; i<string_length; i++) {
var rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum,rnum+1);
}
return randomstring;
}
我已经对您的代码进行了一些修改,现在应该可以使用了。
function String() {
var str = "Some texte here some text here".replace(/(.{3})/g, function (x)
{
return x + randomString();
});
document.write(str);
function randomString() {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 5;
var randomstring = '';
for (var i=0; i<string_length; i++) {
var rnum = Math.floor(Math.random() * chars.length);
randomstring += chars.substring(rnum,rnum+1);
}
return " ( " + randomstring + " ) ";
}
}