我正在嘗試驗證用戶輸入的資訊并確保沒有任何字串為空。
其中一些資訊可以作為“額外用戶”添加到陣列中,也可以加入該組。
所以資料可能看起來像這樣:
const userInfo = {
firstName: 'Jimmy',
lastName: 'Hendrix',
extraUsers: [{
firstName: 'Bob',
lastName: 'Michael'
}],
};
這就是我運行以檢查“extraUsers”陣列中的任何空字串的方法:
function checkForEmptyStrings() {
return (
userInfo.extraUsers.every((extraUser) => {
Object.values(extraUser).every((x) => x !== '')
})
);
}
console.log(checkForEmptyStrings())
我得到的輸出是false,但我希望它是,true因為沒有一個字串是空的。實際上,如果我 console.logObject.values(extraUser).every((x) => x !== '')我得到true
為什么我會得到false最終結果?
可能還有另一種方法可以做到這一點,但出于研究目的,我很想知道這里發生了什么。
干杯和快樂的編碼
uj5u.com熱心網友回復:
您需要回傳內部every
const userInfo = {
firstName: 'Jimmy',
lastName: 'Hendrix',
extraUsers: [{
firstName: 'Bob',
lastName: 'Michael'
}],
};
// And this is what I run to check for any empty strings in the 'extraUsers' Array:
function checkForEmptyStrings() {
return (
userInfo.extraUsers.every((extraUser) => {
return Object.values(extraUser).every((x) => x )
})
);
}
console.log(checkForEmptyStrings())
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/528744.html
上一篇:將物件的所有鍵設定為false或true,包括嵌套物件
下一篇:傳遞類物件陣列
