以下のコードを参照してください。エラーが発生しないのに、なぜtest2()
エラーが発生するのtest1()
ですか? エラーを回避するにはどうすればよいですか (コンストラクター内で呼び出された関数を再定義する必要はありません)。
function getRandomInt(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}
var xyz = function (){
var test1 = function () { getRandomInt(10, 20); };
test1(); // runs with out problem
var test2 = new Function('getRandomInt(10, 20);');
test2(); //results in "Uncaught ReferenceError: getRandomInt is not defined"
};