我想在参数中传递 key (mykey),如下所示
var dat = sortMe(array,"mykey");
像这样运行
function sortMe(data,customname)
{
sorted = Object.assign(...Object
.entries(data)
.sort(({ 1: { customname: a } }, { 1: { customname: b } }) => a - b)
.map(([k, v]) => ({ [k]: v }))
);
return sorted;
}
上面的代码不起作用,但只有当我直接在函数名称中使用键名称时才起作用,如下所示
function sortMe(data,customname)
{
sorted = Object.assign(...Object
.entries(data)
.sort(({ 1: { mykey : a } }, { 1: { mykey: b } }) => a - b)
.map(([k, v]) => ({ [k]: v }))
);
return sorted;
}
最佳答案
您想要做的事情可以通过 computed property name 来实现:
{ [name]: value }
因此,更改这一行:
.sort(({ 1: { customname: a } }, { 1: { customname: b } }) => a - b)
至:
.sort(({ 1: { [customname]: a } }, { 1: { [customname]: b } }) => a - b)
关于javascript - 在函数参数中传递对象键名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59992678/