Javascript eval in function

时间:2014-06-11 18:13:10

标签: javascript function variables

我想创建一个必须在2个数字之间生成随机数的函数,然后将其保存在变量中。我正在使用此代码:

function rand(ran1, ran2, randVar) {
    var randomNumb = Math.floor(Math.random()*(ran2 - ran1)) + ran1;
    eval("var " +randVar+ " = "+randomNumb+";"); 
}
rand(12, 49, rand1)
alert("Your number is: "+rand1)

我得到的错误是:Can't find variable: rand1

任何人都可以帮助我吗?

1 个答案:

答案 0 :(得分:7)

使用eval完全没必要。我推荐这样的东西:

function rand(ran1, ran2) {
    var randomNumb = Math.floor(Math.random()*(ran2 - ran1)) + ran1;
    return randomNumb;
}

var rand1 = rand(12, 49);
alert("Your number is: " + rand1);

请注意,在调用函数时,唯一真正的区别在于您放置标识符的位置rand1

进一步阅读