如何处理javascript对象中的函数?
我试图获取对象内部的数据,但我的对象显示了整个函数。为什么它不只显示我的返回声明?处理这个问题的方法是什么如何处理javascript对象中的函数?,javascript,reactjs,axios,Javascript,Reactjs,Axios,我试图获取对象内部的数据,但我的对象显示了整个函数。为什么它不只显示我的返回声明?处理这个问题的方法是什么 const fetchContacts = async () => { try { await axios.get(url, { headers: { 'auth': 'asdsdfasfd' } }).then(resp => { cons
const fetchContacts = async () => {
try {
await axios.get(url, {
headers: {
'auth': 'asdsdfasfd'
}
}).then(resp => {
const newRows = resp && resp.data && resp.data.map(row =>
({
name: row.name,
surname: row.surname,
city: row.city,
familyNumber: async () => {
try {
const resp = await axios.get(url, {
headers: {
'auth': 'asdsdfasfd'
}
})
return resp.data.length
} catch(error) {
return error
}
},
})
)
})
} catch(error) {
return error
}
}
您正在使用
async/await
。您不必使用返回的承诺。然后
。试试这样的。我还没有测试代码
const fetchContacts = async () => {
try {
const resp = await axios.get(url, {
headers: {
'auth': 'asdsdfasfd'
}
});
const resNo = await axios.get(url2, {
headers: {
'auth': 'somethingNew-qednken'
}
});
const newRows = resp.data && resp.data.map(row =>
({
name: row.name,
surname: row.surname,
city: row.city,
familyNumber: resNo.data.length || 0
})
);
//console.log("my newRows : ", newRows);
} catch(err) {
console.log(err);
}
}
“但我的对象显示了整个功能”-你能澄清一下你的意思吗?我的对象包含如下内容:familyNumber:ƒfamilyNumber()您只声明了一个匿名函数并将其分配给键
familyNumber
,但从未在任何地方调用它。它显示函数,因为您正在将函数分配给该属性。如果要指定函数的返回值,则必须调用函数。