我排序数组:变量函数名的Javascript
myArray.sort(comparators.some_comparator);
和我有几个比较可供选择:
comparators = {
asc_firstname_comparator : function(o1, o2){
...
}
desc_firstname_comparator : function(o1, o2){
...
}
etc...
}
我想写功能取决于输入数据返回一定的比较。它应该弄清楚,从字符串输入比较器,像这样:
function chooseComparator(field, order){
return "comparators."+order+"_"+field+"_comparator";
}
那么,这可能只是函数名字符串传递给sort()
方法,不然我就需要通过参考以某种方式纠正比较?