在某贴中也出现了这种用法:
array.sort(getSortFun('desc', 'name'));
function getSortFun(order, sortBy) {
var ordAlpah = (order == 'asc') ? '>' : '<';
var sortFun = new Function('arg1', 'arg2', 'return arg1.' + sortBy + ordAlpah + 'arg2.' + sortBy + '?1:-1;');
return sortFun;
}
于是乎自己试了一下,真成功了。
var funBody = "alert(arg1+\",\"+arg2);";
var fun = new Function("arg1","arg2",funBody);
fun("3","haha");
成功打印出来“3,haha”。