我有一個具有以下值的陣列:
[
{
'Admin1': {
id: 'fa1b2731'
},
'Admin2': {
id: '7b5ab064'
},
'Admin3': {
id: '9f462511'
},
'Admin4': {
id: 'aa82421d'
},
'Admin5': {
id: '34cb2b'
},
'Admin6': {
id: 'ff71ffdd'
},
'Admin7': {
id: 'b57ac9e7'
}
}
]
我試圖從上面的陣列中檢索每個用戶 ID 的代碼拋出錯誤->預期未定義不是未定義以下是代碼片段:
if (userArray) {
for (const user of Object.values(userArray)) {
const delUserRes = await userApi.deleteUserById({
token: accessToken,
organizationId: orgid;,
userId: user.id
});
上述方法正確讀取用戶陣列,但從不將每個 id 分配給 userId 表單 user.id 并拋出錯誤
uj5u.com熱心網友回復:
示例中的陣列有一個專案,我的意思是讓user.id你應該呼叫array[0].['Admin1'].id. 在您的代碼中,您喜歡array.['Admin1'].id這樣做,這就是為什么它找不到user.id.
嘗試這樣的事情
if (userArray) {
for (const user of Object.values(userArray[0])) {
const delUserRes = await userApi.deleteUserById({
token: accessToken,
organizationId: orgid;,
userId: user.id
});
uj5u.com熱心網友回復:
您的所有用戶都位于索引為 0 的陣列物件的單個元素中。試試下面的代碼
for (const user of Object.values(userArray[0])) {
console.log(user)
}
uj5u.com熱心網友回復:
基本上,您試圖從陣列內的物件獲取值,因此這Object.values在您的代碼中沒有意義。您可以簡單地userArray[0]在 for 回圈中使用或map類似:
var data = [ { 'Admin1': { id: 'fa1b2731' }, 'Admin2': { id: '7b5ab064' }, 'Admin3': { id: '9f462511' }, 'Admin4': { id: 'aa82421d' }, 'Admin5': { id: '34cb2b' }, 'Admin6': { id: 'ff71ffdd' }, 'Admin7': { id: 'b57ac9e7' } } ]
Object.values(data[0]).map(user => { //your logic here } );
uj5u.com熱心網友回復:
似乎所有用戶都位于 usersArray 索引 0。您可以參考它,然后使用它Object.values來迭代它們。
const userArray = [
{
'Admin1': {
id: 'fa1b2731'
},
'Admin2': {
id: '7b5ab064'
},
'Admin3': {
id: '9f462511'
},
'Admin4': {
id: 'aa82421d'
},
'Admin5': {
id: '34cb2b'
},
'Admin6': {
id: 'ff71ffdd'
},
'Admin7': {
id: 'b57ac9e7'
}
}
] ;
const users = userArray[0];
for (const user of Object.values(users)) {
console.log(user.id);
//const delUserRes = await userApi.deleteUserById({
//token: accessToken,
//organizationId: orgid;,
//userId: user.id
//});
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/383623.html
標籤:javascript 摩卡.js 柴
