-1
我想排序对象数组,但我排序的属性是事先不知道的。它存储为一个变量。JS通过变量属性对对象数组排序
var items = [
{foo: "4", bar: "5"},
{foo: "7", bar: "1"},
{foo: "5", bar: "9"},
];
var whatToSort = "";
if (Math.random() > .5) {
whatToSort = "foo"
} else {
whatToSort = "bar"
};
items.sort(function(a, b){
return b.whatToSort - a.whatToSort;
};
这工作,如果我sort()
函数返回b.bar - a.bar
但如果变量whatToSort
使用。有没有办法做到这一点?