我试图用一个函数产生一个变量,并在另一个函数中使用它,然后将其再次从第二个函数传递给另一个函数。我试图以多种方式将变量放置在括号内,但是我似乎无法在最终功能中得到警告的变量。 JSfiddle
function randomNumber(randomstring) {
var chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz";
var string_length = 16;
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;
// alert(randomstring);
}
$("#btn").click( function() {
randomNumber();
//alert(randomstring);
update();
});
function update() {
alert(randomstring);
}
我已经阅读了有关Scope的多个文档,但是我看不到我在这里做得还不够。
最佳答案
您不会从第一个函数返回任何内容,这是通过将随机String用作全局变量http://jsfiddle.net/venkatjp/GFK6B/2/的一种方法。
第一个功能中的return randomstring;
和单击事件中的randomstring = randomNumber(randomstring);
。