是否可以将动态变量名传递给方法?我有一个“获取我的数据”类型的方法,该方法不希望基于对象数组中的某个字段返回已排序的列表。
GetOrderedList(name = 'DisplayName', order = 'asc') {
switch (order) {
case 'desc':
return this.MyList.sort((childA, childB) => SortingHelper.sortByStringDesc(childA.DisplayName, childB.DisplayName));
default:
return this.MyList.sort((childA, childB) => SortingHelper.sortByStringAsc(childA.DisplayName, childB.DisplayName));
}
}
然后调用javascript排序,该排序使用我的排序功能。
export const sortByStringAsc = (itemStringA, itemStringB) => {
console.log('Sorting!', itemStringA);
// If either of the strings are null or blank, just return that no sort is needed.
if (!itemStringA || !itemStringB) {
return 0;
}
const stringA = itemStringA.toUpperCase();
const stringB = itemStringB.toUpperCase();
if (stringA < stringB) {
return -1;
}
if (stringA > stringB) {
return 1;
}
return 0;
};
在代码中,我正在硬编码“ childA.DisplayName”。但是我需要使用传递给方法的“名称”变量。这有可能吗?