eval()可以计算某个字符串,并执行其中的js代码。实际使用中,用到的场景并不多,但是了解一下这个强大的函数,说不定,在遇到疑难杂症的时候就派上用场了。
eval(string); //string是必需参数,含有要计算的js表达式或需要执行的语句
我的疑难杂症就是,要定义个数不确定的n个变量。
首先,通过循环遍历出定义变量的语句,再通过eval执行这些语句,最终实现需求。
var s = 'var';
var n = 6;
for(var i = n; i>=0; i--){
if(i == 0){
s = s + ('a' + i + '=' + i*10);
}else{
s = s + ('a' + i + '=' + i*10 + ',');
}
}
eval(s);
console.log(a0); //0
console.log(a1); //10
console.log(a2); //20
console.log(a3); //30
console.log(a4); //40
console.log(a5); //50