在Javascript中使用eval()来解压缩数组

sar*_*ake 1 javascript eval

我有一个我需要打开的数组.

所以,从类似的东西

var params = new Array();
params.push("var1");
params.push("var2");
Run Code Online (Sandbox Code Playgroud)

我需要有类似的东西

"var1","var2".

我尝试使用eval,但是eval()给了我类似var1,var2 ...我不想自己插入引号,因为传递的vars可以是整数或其他类型.我需要将它传递给一个函数,这就是为什么我不能只遍历数组并将其推入一个字符串.

这里的首选解决方案是什么?

Sea*_*sey 7

如果要将一组值传递给填充形式参数的函数,则可以使用applyFunction原型的方法.

var arr = [1, 2, "three"];

function myFunc(a, b, c) {
   // a = 1, b = 2, c = "three"
   ...
}

myFunc.apply(this, arr);
Run Code Online (Sandbox Code Playgroud)

顺便说一句,this最后一个语句中的参数可以设置为任何对象来设置thisinside 的值myFunc